Bonjour,
Je suis d'accord avec Damien, cela dépend de l'organisation
de la structure de stockage, voici ce qu'en j'en ai trouvé:
je cite :
[
Les membres d'une structure ne sont pas nécessairement stockés dans des octets consécutifs de la mémoire. Il y a parfois des trous dans un structure parce que les ordinateurs peuvent stocker des types de données spécifiques seulement à certaines limites de la mémoire telles que le demi-mot, le mot ou le double-mot. Un mot est une unité de mémoire standard servant à stocker des données dans un ordinateur et est habituellement représenté par 2 ou 4 octets. Considérons le définition de la structure suivante, ou les variables (des objets réels, en fait) echantillon1 et echantillon2 dy type Exemple sont déclarées:
struct Exemple {
char c;
int i;
} echantillon1,echantillon2;
Un ordinateur fonctionnant avec des mots de 2 octets (16bits) peut réclamer que chacun des membres de Exemple soient alignés à la limite du mot, c'est à dire au début d'un mot (ceci est strictement dépendant de la machine).
L'exemple binaire suivant montre un exemple d'alignement de stockage pour un objet du type Exemple qui reçoit le caractère 'a' et l'entier 97. Si les membres sont mémorisés à partir des limites de mots, il en résulte un trou d'un octet (l'octet 1 dans l'exemple binaire) dans le stockage des objets du type Exemple.
Exemple binaire:
Octet 0.............1............2.............3............
.........01100001 ............ 00000000 01100001
]
Fin de citation
Il faut la notion de structure interne d'un ordinateur
pour bien en comprendre le sens.
Amicalement
Lupin