Salut,
je viens de constater (amèrement) que le compilo de Visual code les enum sur quatre octet.
Est-ce qu'il y a un moyen de lui demander (poliement) de les coder sur un seul ?
:roll:
Version imprimable
Salut,
je viens de constater (amèrement) que le compilo de Visual code les enum sur quatre octet.
Est-ce qu'il y a un moyen de lui demander (poliement) de les coder sur un seul ?
:roll:
Il y a peut-être tout simplement un problème d'alignement des données, je ne suis pas sûr que même en travaillant avec des masques sur un octet la place mémoire occupe véritablement ne soit de 4 octets.
Tu sauvegardes les données ?
Tu peux utiliser un #pragma quelque chose (-a1) je crois mais je n'en suis pas sûr).
pour tout le projet :
Paramètres compilo: /Zp1
ou bien :
Sous VC6 dans project->settings Onglet C++
Combo Category tu choisis Code Generation
puis Combo Struct member Alignement tu choisis 1 Byte
Sinon :
#pragma pack(n) ou n vaut 1,2,4,8 ou 16 suivant l'alignement que tu veut.
Par contre c'est pour les structs, je te garrantis pas que ça marche pour les enum...
salut, c'est valable pour l'alignement des structures ,ça m'étonnerait que ça agisse sur la taille d'un enum ...
non ?
:D
Le compilo considère les enum comme des int, donc à mon avis, la taille n'est pas réglable...
aïe, c'est ennuyeux ça...
en fait l'application "discute" avec un système externe selon un protocole ou des enums sont définis sur un octet... je faisais donc une simple recopie, jusqu'à ce que je constate que j'aie des octets en trop. :?
Tant pis, je ferai des cast sur unsigned char, mais je vais quand même tenter le coup de l'alignement mémoire.
Merci !