Intervalli dei tipi di dati
I compilatori di Visual C++ a 32 e a 64 bit riconoscono i tipi indicati nella tabella più avanti in questo articolo.
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)
Se il nome inizia con due caratteri di sottolineatura (__), un tipo di dati non è standard.
Gli intervalli specificati nella tabella seguente sono inclusivo-inclusivo.
Nome tipo |
Byte |
Altri nomi |
Intervallo di valori |
---|---|---|---|
int |
4 |
signed |
Da –2,147,483,648 a 2,147,483,647 |
unsigned int |
4 |
unsigned |
Da 0 a 4,294,967,295 |
__int8 |
1 |
char |
da –128 a 127 |
unsigned __int8 |
1 |
unsigned char |
Da 0 a 255 |
__int16 |
2 |
short, short int, signed short int |
Da –32,768 a 32,767 |
unsigned __int16 |
2 |
unsigned short, unsigned short int |
Da 0 a 65,535 |
__int32 |
4 |
signed, signed int, int |
Da –2,147,483,648 a 2,147,483,647 |
unsigned __int32 |
4 |
unsigned, unsigned int |
Da 0 a 4,294,967,295 |
__int64 |
8 |
long long, signed long long |
Da –9,223,372,036,854,775,808 a 9,223,372,036,854,775,807 |
unsigned __int64 |
8 |
unsigned long long |
Da 0 a 18,446,744,073,709,551,615 |
bool |
1 |
none |
false o true |
char |
1 |
none |
Da –128 a 127 per impostazione predefinita Da 0 a - 255 quando viene compilato utilizzando /J |
signed char |
1 |
none |
da –128 a 127 |
unsigned char |
1 |
none |
Da 0 a 255 |
short |
2 |
short int, signed short int |
Da –32,768 a 32,767 |
unsigned short |
2 |
unsigned short int |
Da 0 a 65,535 |
long |
4 |
long int, signed long int |
Da –2,147,483,648 a 2,147,483,647 |
unsigned long |
4 |
unsigned long int |
Da 0 a 4,294,967,295 |
long long |
8 |
none (ma equivalente a __int64) |
Da –9,223,372,036,854,775,808 a 9,223,372,036,854,775,807 |
unsigned long long |
8 |
none (ma equivalente a __int64 non firmato) |
Da 0 a 18,446,744,073,709,551,615 |
enum |
varies |
none |
Vedere Note più avanti in questo articolo |
float |
4 |
none |
3.4E +/- 38 (7 cifre) |
double |
8 |
none |
1.7E +/- 308 (15 cifre) |
long double |
uguale a double |
none |
Uguale a double |
wchar_t |
2 |
__wchar_t |
Da 0 a 65,535 |
In base a come viene utilizzata, una variabile di __wchar_t indica un tipo di carattere wide o un tipo di carattere multibyte. Utilizzare il prefisso L prima di una costante di carattere o di stringa per definire la costante del tipo di carattere wide.
signed e unsigned sono modificatori che è possibile utilizzare con qualsiasi tipo integrale eccetto bool. Si noti che char, signed char e unsigned char sono tre tipi diversi per scopi di meccanismi come l'overload e i modelli.
I tipi int e unsigned int hanno una dimensione di quattro byte. Tuttavia, il codice portatile non deve dipendere dalla dimensione di int poiché lo standard del linguaggio gli consente di essere specifico dell'implementazione.
C/C++ in Visual Studio supporta inoltre tipi di Integer dimensionati. Per ulteriori informazioni, vedere __int8, __int16, __int32, __int64 e Limiti per tipi Integer.
Per ulteriori informazioni sulle restrizioni della dimensione di ogni tipo, vedere Tipi fondamentali (C++).
L'intervallo dei tipi enumerati varia a seconda del contesto del linguaggio e dei flag del compilatore specificati. Per ulteriori informazioni, vedere Dichiarazioni di enumerazioni C e Dichiarazioni di enumerazioni C++.