__int8, __int16, __int32, __int64

Блок, относящийся только к системам Microsoft

В Microsoft C/C++ поддерживаются целочисленные типы с указанием размера. Это позволяет объявлять 8-, 16-, 32- и 64-разрядные целочисленные переменные при помощи спецификатора типа __intn (где n имеет значение 8, 16, 32 или 64).

В следующем примере объявляется по одной переменной каждого из этих целочисленных типов с указанием размера:

__int8 nSmall;      // Declares 8-bit integer
__int16 nMedium;    // Declares 16-bit integer
__int32 nLarge;     // Declares 32-bit integer
__int64 nHuge;      // Declares 64-bit integer

Типы __int8, __int16 и __int32 аналогичны типам данных ANSI с таким же размером. Они могут использоваться для написания переносимого кода, который одинаково работает на разных платформах. Тип данных __int8 аналогичен типу char, тип __int16 — типу short, а тип __int32 — типу int. Тип __int64 не имеет эквивалента в ANSI.

Пример

В следующем примере показано, каким образом параметр __intxx будет повышен до уровня 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
}
  

См. также

Ссылки

Ключевые слова в C++

Фундаментальные типы (C++)

Диапазоны типов данных