• # Normalement tu n'as aucune garantie

    Posté par (site web personnel) . En réponse au message Les espacements que mettent les compilateurs C dans les structures sont ils toujours les mêmes ?. Évalué à 3.

    Le compilateur va faire un alignement mémoire de tes éléments de structure pour coller avec l'adressage de ton processeur. Donc de fait, selon la capacité d'adressage du processeur considéré l'alignement mémoire ne sera pas identique. Comme tu sembles te préoccuper du boutisme, c'est bien que tu comptes dialoguer avec des processeurs potentiellement non X86.

    Note que sur le réseau, le boutisme standard est le grand boutisme. Ce qui est contraire à l'architecture dominant de nos ordinateurs de bureau.

    Après je ne me souviens plus de la norme exacte concernant le soin laissé aux compilateurs concernant les bits de bourrage, de mémoire tu ne peux faire une généralité sur le comportement des compilateurs à ce sujet surtout sur des architectures différentes.

    L'alignement est un problème que tu peux rencontrer dans tout programme C potentiellement, mais il est vrai que généralement tu ne t'en préoccupes pas surtout si tu enregistres les valeurs champ par champ (méthode conseillée pour éviter les problèmes avec les structures).