Concept général
Variables typées en C++ \(\Rightarrow\) représentation en mémoire
Types (built-in) les plus courants:
-
int a = 5;
entier signé [4 octets]
-
float b = 5.0f;
nombre flottant 'simple précision' [4 octets]
-
double c = 5.0;
nombre flottant 'double précision' [8 octets]
-
char d = 'k' (/107);
encode un 'caractère' ou un nombre signé sur 1 octet.
Extensions classiques
-
size_t e = vector.size()
: entier non signé, pour l'adressage mémoire [8 octets]
-
bool f = true/false;
géré comme un entier, sauf std::vector
Rem.
-
Taille mémoire peut dépendre des architectures (sauf
char
: garantie sur 1 octet.)
-
Pas de type plus petit que 1 octet (8 bits).
-
En pratique, padding pour alignement mémoire sur 4 octets.
-
-
padding = ajouts de 0 pour combler des espaces vides.