Hexa en c

Résolu/Fermé
thbah Messages postés 15 Date d'inscription mardi 10 mars 2009 Statut Membre Dernière intervention 8 décembre 2009 - 10 mars 2009 à 12:17
thbah Messages postés 15 Date d'inscription mardi 10 mars 2009 Statut Membre Dernière intervention 8 décembre 2009 - 10 mars 2009 à 16:08
Bonjour,
j'ai un ptit probleme en c pour mon stage g doit faire un programme de serialisation en c avec les hexa par exemple

pour un hexa de ce type:

B404B701

je veu avoir :

04B4
et
01B7

kelkun p maidr merci d'avance
A voir également:

2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
10 mars 2009 à 12:44
Salut,
Avec les opérateur & et >>, tu dois pouvoir t'en sortir.
Par exemple, avec :
int a=0xB404B701;
int b=(a&0xff)<<8 | a>>8 &0xff;
a>>=16;
int c=(a&0xff)<<8 | a>>8 &0xff;

b devrait contenir 0x01B7
c devrait contenir 0x04B4

Cdlt
0
thbah Messages postés 15 Date d'inscription mardi 10 mars 2009 Statut Membre Dernière intervention 8 décembre 2009
10 mars 2009 à 15:07
merci pour ton aide gè un petit probleme b et c donnennt la même chose si tu p encore m'aider pour sa
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835 > thbah Messages postés 15 Date d'inscription mardi 10 mars 2009 Statut Membre Dernière intervention 8 décembre 2009
10 mars 2009 à 15:49
b et c donnent la même chose si t'oublies de modifier la variable a entre temps. D'où l'utilité de l'instruction :
a>>=16;

As-tu bien pensé à la mettre ?
0
thbah Messages postés 15 Date d'inscription mardi 10 mars 2009 Statut Membre Dernière intervention 8 décembre 2009
10 mars 2009 à 16:08
sa marche merci

si je ve l'appliquer à une variable hexa dans une boucle for comment on procede pour sa?
0