Types fondamentaux (C++)
Les types fondamentaux C++ sont divisées en trois catégories : intégrale, flottantes et non avenue.Types intégraux sont capables de gérer des nombres entiers.Types flottants sont capables de spécifier des valeurs qui peuvent avoir des parties fractionnaires.
Le void type décrit un ensemble de valeurs vide.Aucune variable de type void peut être spécifié, il est principalement utilisé pour déclarer des fonctions qui ne retournent aucune valeur ou de déclarer des pointeurs génériques non typé ou arbitrairement des données typées.Toute expression peut être explicitement convertie ou effectuer un cast en type void.Cependant, ces expressions sont restreintes pour les utilisations suivantes :
Une instruction d'expression.(Voir des Expressions, pour plus d'informations.)
L'opérande gauche de l'opérateur virgule.(Voir Opérateur virgule pour plus d'informations.)
La deuxième ou troisième opérande de l'opérateur conditionnel (? :).(Voir Expressions avec l'opérateur conditionnel pour plus d'informations.)
Le tableau suivant décrit les restrictions sur la taille du type.Ces restrictions sont indépendantes de l'implémentation de Microsoft.
Types fondamentaux du langage C++
Catégorie |
Type |
Sommaire |
---|---|---|
Intégrale |
char |
Type de char est un type intégral qui contient généralement des membres du jeu de caractères d'exécution — dans Microsoft C++, il s'agit d'ASCII. |
|
|
Le compilateur C++ traite les variables de type char, signéchar, et unsignedchar comme ayant des types différents.Les variables de type char sont promus à la int comme si elles sont de type signéchar par défaut, sauf si l'option de compilation /J est utilisée.Dans ce cas ils sont traités en tant que type unsignedchar et sont promus à int sans extension de signe. |
|
bool |
Type de bool est un type intégral qui peut avoir l'une des deux valeurs true ou false.Sa taille n'est pas spécifiée. |
|
short |
Type courtint (ou simplement court) est un type intégral est supérieure ou égale à la taille du type charet inférieure ou égale à la taille du type int. |
|
|
Les objets de type court peuvent être déclarés en tant que signécourt ou unsigned short.Signé court est un synonyme de court. |
|
int |
Type de int est un type intégral est supérieure ou égale à la taille du type courtintet inférieure ou égale à la taille du type longue. |
|
|
Objects of type int can be declared as signedint or unsignedint.Signedintest un synonyme de int. |
|
__intn |
Entier de taille, où n est la taille, en bits, de la variable de type entier.La valeur de n peut être 8, 16, 32 ou 64.(__intn est un mot clé spécifique à Microsoft.) |
|
long |
Type longue (ou longueint) est un type intégral est supérieure ou égale à la taille du type int. |
|
|
Les objets de type longue peuvent être déclarés en tant que signélongue ou unsignedlongue.Signedlong est un synonyme de longue. |
longlong |
Supérieure à un unsigned longue. |
|
Les objets de type long long peuvent être déclarés en tant que signélong long ou unsignedlong long.Signedlong long est un synonyme de long long. |
||
Flottante |
float |
Type float est le type flottant plus petit. |
|
double |
Type double est de type flottant qui est supérieure ou égale à taper float, mais inférieure ou égale à la taille du type longuedouble. |
|
long double1 |
Type longuedouble est de type flottant qui équivaut à taper double. |
Caractères étendus |
__wchar_t |
Une variable de __wchar_t désigne un type de caractères multioctets ou de caractères larges.Par défaut, wchar_t est un type natif, mais vous pouvez utiliser /Zc:wchar_t- à rendre wchar_t un typedef pour unsigned short. Utilisez le préfixe l avant un caractère ou chaîne constante pour désigner la constante de type de caractère de l'échelle. |
1 La représentation sous forme de long double et double est identique.Cependant, long double et double sont des types distincts.
Spécifique à Microsoft
Le tableau suivant répertorie l'espace de stockage requis pour les types fondamentaux Microsoft C++.
Tailles de Types fondamentaux
Type |
Taille |
---|---|
bool |
1 octet |
char, unsigned char, signed char |
1 octet |
short, unsigned short |
2 octets |
int, unsigned int |
4 octets |
__intn |
8, 16, 32, 64 ou 128 bits selon la valeur de n. __intn est spécifique à Microsoft. |
long,unsigned long |
4 octets |
float |
4 octets |
double |
8 octets |
long double1 |
8 octets |
long long |
Équivalent à __int64. |
1 La représentation sous forme de long double et double est identique.Cependant, long double et double sont des types distincts.
FIN spécifique à Microsoft
Voir Data Type Ranges pour obtenir un résumé de la plage de valeurs de chaque type.
Pour plus d'informations sur la conversion de type, consultez Conversions Standard.