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

C++ Discussion :

Que signigie: "unsigned char phase:1"


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2002
    Messages : 48
    Par défaut Que signigie: "unsigned char phase:1"
    BOnjour,

    dans la declaration d'une struct, j'ai des ligne de ce type:
    typedef struct{
    ...
    unsigned char field : 1
    unsigned char moon : 2
    ..
    } mystruct

    1- quel est l'interet des unsigned char par rapport au char ?
    2- que signifie le :1 ou :2 apres la declaration ?

    MErci de votre aide !!

    Bart

  2. #2
    Membre très actif Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Par défaut
    L'interêt des unsigned char par rapport aux char c'est vrai je n'y est jamais pensé, aucune idée ...

    Sinon pour la structure c'est un champ de bits (BIT FIELD), cela te permet de manipuler des bits, donc je fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    typedef struct{
      int a;
      int a_1:1;//bit numéro 1
      int a_5:5;//du bit numero 2 au bit numéro 5
      //<...>
    }BITFIELD
    J'éspère ne pas m'avoir trompé ^^
    Compil your life guy!
    The Aures Project

  3. #3
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Par défaut
    On sait que dans un unsigned char, tous les bits servent à quelquechose, et tous les motifs de bits représentent un nombre. Ce qui n'est pas le cas des char ou des signed chars. En gros, si on veut faire des manip bit à bit, c'est un bon choix de type.
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2002
    Messages : 48
    Par défaut
    ok, merci de ces eclaircissements,

    donc si je fais:

    unsigned char phase : 1;
    unsigned char rate : 4;
    unsigned char page;

    dans le premier cas je vais utiliser uniquement le premier bit,
    dans le second cas, je "dis" que je vais utiliser les 4 premiers bits,
    dans le 2e cas, j'utilise tous les 8 bits.

  5. #5
    Membre très actif Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Compil your life guy!
    The Aures Project

Discussions similaires

  1. [débutant]obtenir un unsigned char en tant que String
    Par NorthernLights dans le forum C++
    Réponses: 2
    Dernier message: 03/02/2006, 10h30
  2. Réponses: 6
    Dernier message: 06/10/2005, 11h30
  3. Décalage de bit sur unsigned char [8]
    Par dboulange dans le forum C++
    Réponses: 14
    Dernier message: 26/07/2005, 14h10
  4. Réponses: 19
    Dernier message: 28/04/2005, 15h36
  5. char et unsigned char
    Par jobherzt dans le forum C++
    Réponses: 8
    Dernier message: 11/02/2005, 00h24

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