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

Réseau Discussion :

Conversion binaire vers entier ?


Sujet :

Réseau

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 206
    Points : 79
    Points
    79
    Par défaut Conversion binaire vers entier ?
    Salut à tous

    Je dois envoyer des trames entre 2 machines via tcp ip. Je dois envoyer des nombres de 16 bits, j'ai donc choisi quint16. Tout allait bien, j'utilisais un QDataStream, ça roulait jusqu'à ce que j'aprenne que je dois manier certaines nombres carrément bit à bit.

    En gros, je dois mettre le 3ème bit du premier octet à 1 pour que ça signifie telle action.
    Ca me gonfle au possible mais je n'ai pas le choix :s

    Du coup je ne sais pas trop comment m'y prendre, même si j'arrive à construire mon nombre binaire via un QBitArray, est-ce que je peux quand même le transmettre à mon QDataStream, et qu'il soit vu comme un quint16 ? Ou est-ce qu'il vaut mieux que j'essaie de convertir le binaire en quint16, s'il y a un moyen ?

    J'ai essayé d'utiliser une QString comme équivalent à un binaire, car je sais qu'elle a la méthode toInt(), mais le résultat n'est pas terrible :s

    Je vous avoue que je suis un peu perdu

    Merci d'avance

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Points : 969
    Points
    969
    Par défaut
    Un peu de logique et c'est dans la poche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    quint16 valeurModifiee = maValeurInitiale | 0x2000 ;
    G.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 206
    Points : 79
    Points
    79
    Par défaut
    Salut Gulish, merci de m'avoir répondu

    Je dois avouer que je n'ai pas tout à fait compris ta réponse.
    C'est pour illustrer "le 3ème bit du premier octet à 1" ?^^

    Je ferais des tests demain pour essayer de comprendre

    edit: euh je voulais dire ce matin, il est deja tot :p

  4. #4
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Points : 969
    Points
    969
    Par défaut
    Oui, le code que j'ai mis met à 1 le 3eme bite du premier octet de ton quint16. Et tu restes avec un quint16, donc tu peux l'envoyer comme tu faisais avant avec ton QDataStream.

    Si tu t'intéresses à la modification bit à bit de valeur, les opérateurs vont grandement te simplifier la vie.

    G.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 206
    Points : 79
    Points
    79
    Par défaut
    C'est super, tu dépasses mes espérances

    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. aide conversion binaire vers decimal
    Par getstar dans le forum Débuter
    Réponses: 7
    Dernier message: 18/06/2009, 01h50
  2. Conversion float vers entier
    Par kromartien dans le forum C
    Réponses: 2
    Dernier message: 29/09/2007, 13h35
  3. conversion string vers entier
    Par k_boy dans le forum VC++ .NET
    Réponses: 4
    Dernier message: 11/04/2007, 13h33
  4. [C#] Conversion chaîne vers entier signé 8 bits
    Par SesechXP dans le forum Windows Forms
    Réponses: 2
    Dernier message: 25/09/2006, 14h29
  5. conversion chaîne vers entier
    Par pepper18 dans le forum C++
    Réponses: 2
    Dernier message: 31/03/2006, 16h36

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