__int8, __int16, __int32, __int64
Specifické pro Microsoft
Microsoft C/C++ obsahuje podporu pro celočíselné typy s velikostí.Je možné deklarovat 8, 16, 32 a 64-bitové celočíselné proměnné pomocí typu __intn, kde n je 8, 16, 32 nebo 64.
Následující příklad deklaruje jednu proměnnou pro každý z těchto celočíselných typů s velikostí:
__int8 nSmall; // Declares 8-bit integer
__int16 nMedium; // Declares 16-bit integer
__int32 nLarge; // Declares 32-bit integer
__int64 nHuge; // Declares 64-bit integer
Typy __int8, __int16 a __int32 jsou synonyma pro ANSI typy, které mají stejnou velikost, a jsou užitečné pro psaní přenositelného kódu, který se chová stejně na různých platformách.Datový typ __int8 je synonymum pro typ char, __int16 je synonymum pro typ short a __int32 je synonymum pro typ int.Typ __int64 nemá žádný ANSI ekvivalent.
Příklad
Následující příklad ukazuje, že parametr __intxx bude povýšen na 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
}