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

Rust Discussion :

interprétation de buffer


Sujet :

Rust

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Janvier 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Janvier 2018
    Messages : 22
    Par défaut interprétation de buffer
    Bonjour

    J'aurai une nouvelle fois besoin de votre aide .
    je reçois des donnée numérique dans un buffer, octet par octet, mais la valeur que je reçois et sur 2 octets et je n'arrive pas à voir un angle d'approche.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    for &message in &buf[47..amt]{
                print!("{}",message);
    Par exemple je suis sensé afficher 9400 soit un nombre sur 2 octets mais j'affiche 36,184 soit 2 nombres sur 1 octet
    J'espère que j'ai réussi à clarifier ma demande

    Merci à vous

  2. #2
    Membre Expert
    Avatar de Pyramidev
    Homme Profil pro
    Tech Lead
    Inscrit en
    Avril 2016
    Messages
    1 513
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Tech Lead

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 513
    Par défaut
    Bonjour,

    Tu peux utiliser u16::from_be_bytes.

    Illustration :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    fn main() {
        let value = u16::from_be_bytes([36, 184]);
        assert_eq!(value, 9400);
    }
    La documentation l'accompagne d'un exemple intéressant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    fn read_be_u16(input: &mut &[u8]) -> u16 {
        let (int_bytes, rest) = input.split_at(std::mem::size_of::<u16>());
        *input = rest;
        u16::from_be_bytes(int_bytes.try_into().unwrap())
    }
    Mais il faudra adapter le code à ton besoin.

    Bonne chance.

  3. #3
    Membre averti
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Janvier 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Janvier 2018
    Messages : 22
    Par défaut
    Merci beaucoup c'est tout à fait ce que je cherchais

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

Discussions similaires

  1. Différence d'interprétation 'buffer' et '&buffer'
    Par MogDeChNord dans le forum C
    Réponses: 9
    Dernier message: 04/10/2006, 14h00
  2. stencil buffer
    Par patapetz dans le forum OpenGL
    Réponses: 6
    Dernier message: 26/02/2004, 17h23
  3. Vider le buffer du clavier
    Par flavien tetart dans le forum x86 16-bits
    Réponses: 2
    Dernier message: 12/07/2002, 08h35
  4. Affichage en passant par un buffer...
    Par Sirotilc dans le forum MFC
    Réponses: 5
    Dernier message: 27/05/2002, 21h00
  5. Alpha blending et Z-buffer directx 8
    Par Cesar4 dans le forum DirectX
    Réponses: 1
    Dernier message: 23/05/2002, 12h58

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