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 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 č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é
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro