Základní typy (C++)
Základní typy jazyka C++ jsou rozděleny do tří kategorií: integral, plovoucí a void.Integrální typy jsou schopné zpracovat celá čísla.Plovoucí typy jsou schopny určit hodnoty, které mohou mít zlomkové části.
Typ void popisuje typ prázdné sady hodnot.Nelze určit žádné proměnné typu void – ty se používají především k deklarování funkcí, které nevrací žádné hodnoty, nebo pro deklaraci obecných ukazatelů na data bez typu nebo s libovolným typem.Libovolný výraz může být explicitně převeden nebo přetypován na typ void.Tyto výrazy jsou však omezeny na následující použití:
Příkaz výrazu. (Další informace naleznete v tématu Výrazy.)
Levý operand operátoru čárky. (Více informací naleznete v části Operátor čárka.)
Druhá nebo třetí operanda podmíněného operátoru (? :). (Další informace naleznete v části Výrazy s podmíněným operátorem.)
Následující tabulka popisuje omezení velikostí písma.Tato omezení jsou nezávislé implementace společnosti Microsoft.
Základní typy jazyka C++
Kategorie |
Type |
Obsah |
---|---|---|
Integrál |
char |
Typ char je typ integrálu, který obvykle obsahuje členy znakové sady spuštění – v Microsoft C++ je to ASCII. |
|
|
Kompilátor C++ zpracovává proměnné typu char, signed char a unsigned char jako by měly různé typy.Proměnné typu char jsou povýšeny na int, jako by se jednalo o typ signed char ve výchozím nastavení, pokud je použita možnost kompilace/J.V tomto případě jsou považovány za typ unsigned char a jsou povýšeny na typ int bez přípony sign. |
|
bool |
Typ bool integrálního typu, který může mít jednu ze dvou hodnot, je true nebo false.Velikost není zadána. |
|
short |
Typ short int (nebo jednoduše short) je integrálový typ, který je větší než nebo rovno velikosti typu char a kratší než nebo rovno velikosti typu int. |
|
|
Objekty typu short lze deklarovat jako signed short nebo unsigned short.Signed short je synonymum pro short. |
|
int |
Typ int je integrálový typ, který je větší než nebo rovno velikosti typu short int a kratší než nebo rovno velikosti typu long. |
|
|
Objekty typu int lze deklarovat jako signed int nebo unsigned int.Signed int je synonymum pro int. |
|
__intn |
Velikost celého čísla, kde n je velikost celočíselné proměnné v bitech.Hodnota n může být 8, 16, 32 nebo 64. (__intn je specifické klíčové slovo pro společnost Microsoft.) |
|
long |
Typ long (nebo long int) je integrální typ, který je větší než nebo rovno velikosti typu int. |
|
|
Objekty typu long lze deklarovat jako signed long nebo unsigned long.Signed long je synonymum pro long. |
longlong |
Větší, než nepodepsaný výraz long. |
|
Objekty typu long long lze deklarovat jako signed long long nebo unsigned long long.Signed long long je synonymum pro long long. |
||
Plovoucí |
float |
Typ float je nejmenší plovoucí typ. |
|
double |
Typ double je plovoucí typ, který je větší než nebo rovno typu float, ale kratší než nebo rovno velikosti typu long double. |
|
long double1 |
Typ long double je plovoucí typ, který se rovná typu double. |
Široký znak |
__wchar_t |
Proměnná __wchar_t označuje typ širokého znaku nebo vícebajtového znaku.Ve výchozím nastavení je wchar_t nativní typ, ale můžete použít volbu /Zc:wchar_t-, aby byl wchar_t typedef typu short bez znaménka. Použijte předponu L před znak nebo řetězec konstanty k označení celého znaku typu konstanty. |
1 Reprezentace long double a double je identická.Nicméně long double a double jsou zvláštní typy.
Specifické pro Microsoft
Následující tabulka uvádí velikost úložiště potřebného pro základní typy v jazyce Microsoft C++.
Velikosti základních typů
Type |
Size |
---|---|
bool |
1 bajt |
char, unsigned char, signed char |
1 bajt |
short, unsigned short |
2 bajty |
int, unsigned int |
4 bajty |
__intn |
8, 16, 32, 64 nebo 128 bitů v závislosti na hodnotě n. __intn je specifický pro společnost Microsoft. |
long, unsigned long |
4 bajty |
float |
4 bajty |
double |
8 bajtů |
long double1 |
8 bajtů |
long long |
Odpovídá __int64. |
1 Reprezentace long double a double je identická.Nicméně long double a double jsou zvláštní typy.
Specificka produktu Microsoft END
Viz Oblasti typu dat se souhrnnými informacemi o rozsahu hodnot jednotlivých typů.
Další informace o převodu typu viz Standardní převody.