Timeout del tipo di dati
Per 32 bit e i compilatori a 64 bit, Microsoft Visual C++ riconosce i tipi riportati nella tabella riportata di seguito.Si noti che il seguente tipo presenta inoltre form senza segno:
int (unsignedint)
__int8 (unsigned__int8)
__int16 (unsigned__int16)
__int32 (unsigned__int32)
__int64 (unsigned__int64)
short (unsignedshort)
long (unsignedlong)
longlong (unsignedlonglong)
Nome tipo |
Byte |
Altri nomi |
Intervallo di valori |
---|---|---|---|
int |
4 |
con segno |
Da –2.147.483.648 a 2.147.483.647 |
unsigned int |
4 |
senza segno |
Da 0 a 4.294.967.295 |
__int8 |
1 |
char |
Da –128 a 127 |
__int8 senza segno |
1 |
unsigned char |
Da 0 a 255 |
__int16 |
2 |
breve, breve int, short integer con segno |
Da –32.768 a 32.767 |
__int16 senza segno |
2 |
breve, breve intero senza segno senza segno |
Da 0 a 65.535 |
__int32 |
4 |
intero con segno e firmato, int |
Da –2.147.483.648 a 2.147.483.647 |
__int32 senza segno |
4 |
intero senza segno e unsigned |
Da 0 a 4.294.967.295 |
__int64 |
8 |
tempo tempo, lungo esteso con segno |
Da –9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 |
unsigned __int64 |
8 |
long unsigned long |
Da 0 a 18,446,744,073,709,551,615 |
bool |
1 |
nessuno |
true o false |
char |
1 |
nessuno |
- 128 e 127 per impostazione predefinita 0 - 255 quando viene compilato con /J |
signed char |
1 |
nessuno |
Da –128 a 127 |
unsigned char |
1 |
nessuno |
Da 0 a 255 |
short |
2 |
breve int, short integer con segno |
Da –32.768 a 32.767 |
unsigned short |
2 |
breve intero senza segno |
Da 0 a 65.535 |
long |
4 |
int lungo, int esteso con segno |
Da –2.147.483.648 a 2.147.483.647 |
unsigned long |
4 |
int unsigned long |
Da 0 a 4.294.967.295 |
tempo tempo |
8 |
nessuno ma equivalente a __int64) |
Da –9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 |
long unsigned long |
8 |
nessuno ma equivalente a __int64 senza segno) |
Da 0 a 18,446,744,073,709,551,615 |
enum |
varia |
nessuno |
Vedere la sezione Osservazioni. |
float |
4 |
nessuno |
3.4E su +/- 38 (7 cifre) |
double |
8 |
nessuno |
1.7E su +/- 308 (15 cifre) |
doppio lungo |
stessi del doppio |
nessuno |
stessi del doppio |
wchar_t |
2 |
__wchar_t |
Da 0 a 65.535 |
una variabile di __wchar_t definisce un tipo di carattere multibyte o a caratteri estesi.per impostazione predefinita wchar_t è un oggetto typedef per unsignedshort.utilizzare " prefisso prima di un carattere o di una costante di stringa per definire la costante di ampio-carattere-tipo.Durante la compilazione con /Zc: wchar_t o /Za, è possibile distinguere unsignedshort e wchar_t ai fini dell'overload della funzione.
Signed e unsigned sono i modificatori che possono essere utilizzati con qualsiasi tipo integrale tranne bool.char il tipo è il comportamento simile signed char per impostazione predefinita, ma è possibile specificare /J (opzione del compilatore e fare per ottenere un comportamento simile unsigned char per impostazione predefinita.
int e unsignedint i tipi è la dimensione della parola del sistema: quattro byte.Tuttavia, il codice portabile non deve dipendere dalla dimensione di int.
Supporto delle funzionalità C/C++ Microsoft anche ai tipi interi ridimensionati.vedere __int8, __int16, __int32, __int64 per ulteriori informazioni.Vedere limiti Integer.
vedere tipi fondamentali per ulteriori informazioni sulle limitazioni delle dimensioni di ogni tipo.
L'intervallo dei tipi enumerati varia a seconda del contesto del linguaggio e i flag specificati del compilatore.Le enumerazioni e C++ e c# non CLR, le costanti di enumerazione e i valori dei tipi enumerati sono espresse in termini di tipo int.Le enumerazioni C++ CLR possono essere supportate da un tipo scalare specificato.L'intervallo di un'enumerazione viene definito come valori costituiti da più elevati o superiori che possano essere archiviati nei campi di bit di più piccolo e più grande degli enumeratori.Tuttavia, il compilatore C++ consente qualsiasi valore nell'intervallo del tipo di supporto dell'enumerazione per specificare (questa può richiedere un cast).Per ulteriori informazioni, fare riferimento a Dichiarazioni di enumerazione c e Dichiarazioni di enumerazione C++.