__int8, __int16, __int32, __int64
Specifici di Microsoft
Supporto delle funzionalità di Microsoft C/C++ ai tipi interi ridimensionati. È possibile dichiarare variabili integer a 8, 16, 32, o 64-bit, utilizzando l'identificatore di tipo __intn, dove n è 8, 16, 32, o 64.
Nell'esempio seguente viene dichiarata una variabile per ognuno di questi tipi di integer ridimensionati:
__int8 nSmall; // Declares 8-bit integer
__int16 nMedium; // Declares 16-bit integer
__int32 nLarge; // Declares 32-bit integer
__int64 nHuge; // Declares 64-bit integer
I tipi __int8, __int16 e __int32 sono sinonimi per i tipi ANSI ed hanno la stessa dimensione, sono utili per la scrittura di codice portabile che si comporta in modo identico su più piattaforme. Il tipo di dato __int8 è sinonimo del tipo char, __int16 è sinonimo del tipo short e __int32 è sinonimo del tipo int. Non è disponibile alcun equivalente ANSI per il tipo __int64.
Esempio
Nell'esempio seguente viene illustrato che un parametro __intxx verrà trasformato in int:
// sized_int_types.cpp
#include <stdio.h>
void func(int i) {
printf_s("%s\n", __FUNCTION__);
}
int main()
{
__int8 i8 = 100;
func(i8); // no void func(__int8 i8) function
// __int8 will be promoted to int
}