IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

forcer la taille d'un enum


Sujet :

MFC

  1. #1
    tut
    tut est déconnecté
    Membre éclairé
    Avatar de tut
    Inscrit en
    Juillet 2002
    Messages
    373
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 373
    Par défaut forcer la taille d'un enum
    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 ?

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Par défaut
    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).
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    Membre chevronné
    Avatar de matazz
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    471
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 471
    Par défaut
    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...

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut, c'est valable pour l'alignement des structures ,ça m'étonnerait que ça agisse sur la taille d'un enum ...
    non ?


  5. #5
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 394
    Par défaut
    Le compilo considère les enum comme des int, donc à mon avis, la taille n'est pas réglable...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    tut
    tut est déconnecté
    Membre éclairé
    Avatar de tut
    Inscrit en
    Juillet 2002
    Messages
    373
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 373
    Par défaut
    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 !

Discussions similaires

  1. Forcer téléchargement : taille limite ?
    Par Booyakha dans le forum Langage
    Réponses: 3
    Dernier message: 06/09/2006, 16h37
  2. Forcer la taille d'un select
    Par dessinateurttuyen dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 25/07/2006, 16h58
  3. Forcer la taille d'un champ en HTML
    Par Rei Angelus dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 15/03/2006, 16h28
  4. Forcer la taille d'une fenetre
    Par uloaccess dans le forum Access
    Réponses: 6
    Dernier message: 04/11/2005, 17h25
  5. [JDBC] Forcer la taille d'une string
    Par julio123 dans le forum JDBC
    Réponses: 4
    Dernier message: 10/06/2004, 09h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo