Rozsahy datového typu

32bitové a 64bitové kompilátory Microsoft C++ rozpoznávají typy v tabulce dále v tomto článku.

  • int (unsigned int)

  • __int8 (unsigned __int8)

  • __int16 (unsigned __int16)

  • __int32 (unsigned __int32)

  • __int64 (unsigned __int64)

  • short (unsigned short)

  • long (unsigned long)

  • long long (unsigned long long)

Pokud název začíná dvěma podtržítky (__), datový typ není standardní.

Rozsahy zadané v následující tabulce jsou inkluzivní.

Název typu Přijaté Jiné názvy Rozsah hodnot
int 4 signed -2 147 483 648 až 2 147 483 647
unsigned int 4 unsigned 0 až 4 294 967 295
__int8 1 char -128 až 127
unsigned __int8 1 unsigned char 0 až 255
__int16 2 short, short int, signed short int -32 768 až 32 767
unsigned __int16 2 unsigned short, unsigned short int 0 až 65 535
__int32 4 signed, signed int, int -2 147 483 648 až 2 147 483 647
unsigned __int32 4 unsigned, unsigned int 0 až 4 294 967 295
__int64 8 long long, signed long long -9 223 372 036 854 775 808 až 9 223 372 036 854 775 807
unsigned __int64 8 unsigned long long 0 až 18 446 744 073 709 551 615
bool 1 žádný false nebo true
char 1 žádný -128 až 127 ve výchozím nastavení

0 až 255 při kompilaci pomocí /J
signed char 1 žádný -128 až 127
unsigned char 1 žádný 0 až 255
short 2 short int, signed short int -32 768 až 32 767
unsigned short 2 unsigned short int 0 až 65 535
long 4 long int, signed long int -2 147 483 648 až 2 147 483 647
unsigned long 4 unsigned long int 0 až 4 294 967 295
long long 8 žádné (ale ekvivalentní __int64) -9 223 372 036 854 775 808 až 9 223 372 036 854 775 807
unsigned long long 8 žádné (ale ekvivalentní unsigned __int64) 0 až 18 446 744 073 709 551 615
enum Liší žádný
float 4 žádný 3,4E +/- 38 (7 číslic)
double 8 žádný 1,7E +/- 308 (15 číslic)
long double stejné jako double žádný Stejné jako double
wchar_t 2 __wchar_t 0 až 65 535

V závislosti na tom, jak se používá, určuje proměnná __wchar_t typu širokého znaku nebo vícebajtového typu. Před znakovou nebo řetězcovou konstantou L použijte předponu k určení konstanty typu široký znak.

signed a unsigned jsou modifikátory, které lze použít s jakýmkoli celočíselným typem s výjimkou bool. Všimněte si, že char, signed chara unsigned char jsou tři různé typy pro účely mechanismů, jako je přetížení a šablony.

unsigned int Typy int mají velikost čtyř bajtů. Přenosný kód by však neměl záviset na velikosti int , protože jazyková norma umožňuje, aby byla specifická pro implementaci.

C/C++ v sadě Visual Studio podporuje také celočíselné typy velikosti. Další informace najdete v tématu __int8, __int16, __int32, __int64 a celočíselné limity.

Další informace o omezení velikosti jednotlivých typů naleznete v tématu Předdefinované typy.

Rozsah výčtových typů se liší v závislosti na kontextu jazyka a zadaných příznakech kompilátoru. Další informace naleznete v tématu C – deklarace výčtu a výčty.

Viz také

Klíčová slova
Předdefinované typy