[ Web Proxy ]
URL:
Viewing: https://fr.cppreference.com/cpp/language/types [Back]  [Original]

Types fondamentaux cppreference.com
cppreference.com
Espaces de noms
Variantes

Types fondamentaux

De cppreference.com
 
 
Langage C++
Sujets gnraux
Contrle de flux
Instructions conditionnelles
Instructions d'itration
Instructions de saut
Fonctions
dclaration de fonction
expression lambda
fonction gnrique
spcificateur inline
spcification d'exception (obsolte)
spcificateur noexcept (C++11)
Exceptions
Espaces de noms
Types
spcificateur decltype (C++11)
Qualificatifs
qualificatifs const et volatile
qualificatifs de stockage
qualificatif constexpr (C++11)
qualificatif auto (C++11)
qualificatif alignas (C++11)
Initialisation
Littraux
Expressions
oprateurs alternatifs
Utilitaires
Types
dclaration typedef
dclaration d'alias de type (C++11)
attributs (C++11)
Jette
Original:
Casts
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
conversions implicites
conversion const_cast
conversion static_cast
conversion dynamic_cast
conversion reinterpret_cast
conversions style C et style fonction
Allocation de mmoire
Classes
Qualificatifs spcifiques aux membres de classe
Fonctions membres spciales
Modles
classes gnriques
fonctions gnriques
spcialisation de modles
paquets de paramtres (C++11)
Divers
Assembleur
 

(Voir aussi la liste des type utilitaires divers qui sont fournis par C++.)

Type boolen

bool - type capable de contenir l'une des deux valeurs : vrai (true) ou faux (false).

Types de caractres

signed char - type pour la reprsentation des caractres signs.
unsigned char - type pour la reprsentation des caractres non signs.
char - type reprsentant un caractre (quivalent signed char ou unsigned char selon le systme cible).
wchar_t - type reprsentant caractre large. (ex. UTF-8)
char16_t - type reprsentant un caractre UTF-16. (depuis C++11)
char32_t - type reprsentant un caractre UTF-32. (depuis C++11)

Types entiers

int - type entier de base. Peut tre omis si l'une des modificateurs suivants est prsent. S'il n'y a pas de modificateur de longueur spcifi, le type est garanti d'tre d'un grandeur d'au moins 16 bits. Par contre, sur un systme 32 ou 64 bits, il est presque exclusivement garanti d'avoir une grandeur d'au moins 32 bits (voir plus bas).

Modificateurs

Modifient le type entier. Peuvent tre prsents dans n'importe quel ordre. Seulement un lment de chaque groupe peut tre prsent.

Sign/Non-sign

signed - le type cible aura une reprsentation signe. (Modificateur par dfaut lorsque omis)
unsigned - le type cible aura une reprsentation non-signe.

Grandeur

short - Le type cible sera optimis pour l'espace et aura une grandeur d'au moins 16 bits.
long - Le type cible aura une grandeur d'au moins 32 bits.
long long - Le type cible aura une grandeur d'au moins 64 bits. (depuis C++11)

Proprits

Le tableau suivant rsume tout les types entiers et leurs proprits :

Dterminant du type Type quivalent Largeur (bits) en mmoire
C++ standard LP32 ILP32 LLP64 LP64
short
short int au moins
16
16 16 16 16
short int
signed short
signed short int
unsigned short
unsigned short int
unsigned short int
int
int au moins
16
16 32 32 32
signed
signed int
unsigned
unsigned int
unsigned int
long
long int au moins
32
32 32 32 64
long int
signed long
signed long int
unsigned long
unsigned long int
unsigned long int
long long
long long int
(C++11)
au moins
64
64 64 64 64
long long int
signed long long
signed long long int
unsigned long long
unsigned long long int
(C++11)
unsigned long long int

N.B.: le Standard C++ garantit la relation suivante : 1 == sizeof(char) <= sizeof(short) <= sizeof(int) <= sizeof(long) <= sizeof(long long).

Les modles de donnes

Systmes 32 bits :

  • LP32:
  • Win16 API
  • ILP32;
  • Win32 API
  • Unix and Unix-like systems (Linux, Mac OS X)

Systmes 64 bits :

  • LLP64
  • Win64 API
  • LP64
  • Unix and Unix-like systems (Linux, Mac OS X)

Types virgules flottantes

float - type virgule flottante prcision simple. Il s'agit habituellement du type IEEE-754 32 bits.
double - type virgule flottante prcision double. Il s'agit habituellement du type IEEE-754 64 bits.
long double - type virgule flottante prcision tendue. N'est pas ncessairement associ aux types dtermins par IEEE-754. Il s'agit habituellement du type virgule flottante 80-bit x87 sur les architectures x86 et x86-64.

Plage de valeurs

Le tableau suivant fournit une rfrence pour les limites des reprsentations numriques communes. Notez que tous les modles de donnes populaires (Incluant ILP32, LP32, LP64 et LLP64) utilisent le complment deux pour les reprsentation des entiers en mmoire. Aussi, le Standard C++ ne spcifie pas le type de reprsentation utiliser, il garantie nanmoins la limite de la reprsentation complment un.

Type Taille en bits Format Plage de valeurs
Approximate Exact
caractre 8 sign (complment un) -127 to 127
sign (complment deux) -128 to 127
non-sign 0 to 255
entier 16 sign (complment un) 3.27 104 -32767 to 32767
sign (complment deux) -32768 to 32767
non-sign 0 to 6.55 104 0 to 65535
32 sign (complment un) 2.14 109 -2,147,483,647 to 2,147,483,647
sign (complment deux) -2,147,483,648 to 2,147,483,647
non-sign 0 to 4.29 109 0 to 4,294,967,295
64 sign (complment un) 9.22 1018 -9,223,372,036,854,775,807 to 9,223,372,036,854,775,807
sign (complment deux) -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
non-sign 0 to 1.84 1019 0 to 18,446,744,073,709,551,615
floating
point
32 IEEE-754 3.4 10 38
(~ 7 chiffres)
  • min subnormal: 1.401,298,4 10-47
  • min normal: 1.175,494,3 10-38
  • max: 3.402,823,4 1038
64 IEEE-754 1.7 10 308
(~ 15 chiffres)
  • min subnormal: 4.940,656,458,412 10-324
  • min normal: 2.225,073,858,507,201,4 10-308
  • max: 1.797,693,134,862,315,7 10308

Mots-cls

bool, true, false, char, wchar_t, char16_t, char32_t, int, short, long, signed, unsigned, float, double

Voir aussi


Web Proxy Viewer  |  New URL  |  Original Page