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 (__
), je datový typ nestandardní.
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 |
0 | char |
-128 až 127 |
unsigned __int8 |
0 | 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 |
0 | Žádná | false nebo true |
char |
0 | Žádná | -128 až 127 ve výchozím nastavení 0 až 255 při kompilaci pomocí /J |
signed char |
0 | Žádná | -128 až 127 |
unsigned char |
0 | Žá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ší se | Žádná | |
float |
4 | Žádná | 3,4E +/- 38 (sedm číslic) |
double |
8 | Žádná | 1,7E +/- 308 (patnáct číslic) |
long double |
stejné jako double |
Žádná | Stejné jako double |
wchar_t |
2 | __wchar_t |
0 až 65 535 |
Proměnná určuje typ širokého __wchar_t
znaku nebo vícebajtový typ znaku. 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 char
a unsigned char
jsou tři různé typy pro účely mechanismů, jako je přetížení a šablony.
unsigned int
Typy int
mají velikost 4 bajty. Přenositelný kód by ale neměl záviset na velikosti int
, protože jazykový standard umožňuje, aby to bylo 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.