• [^] # Re: Question probablement bête

    Posté par (site web personnel, Mastodon) . En réponse au journal #define CHAR_BIT 8. Évalué à 5.

    Moi ce que j'ai retenu de la norme c'est que int8_t peut ne pas être défini si jamais ton architecture ne permet pas d'adresser les choses par mots de 8 bits.

    Par contre il peut y avoir des types int_least8_t (au moins 8 bits) et int_fast8_t (au moins 8 bits, et plus large si ça lui permet d'être plus rapide).

    Je crois que ça n'empêche ps d'avoir sizeof(int8_t)=2: ça voudrait dire que le compilateur génère automatiquement des opérations qui masquent 8 des 16 bits pour que le code écrit aie effectivement un type qui se comporte comme s'il n'avait que 8 bits, mais qui prend plus de place, avec des bits qui se retrouve inutilisés.