Décomposition d'un Double en 4 variables Char

raidentr Messages postés 35 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 14 mai 2004 - 23 avril 2004 à 15:48
raidentr Messages postés 35 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 14 mai 2004 - 24 avril 2004 à 07:15
Un petit Pb Mathématique :

Comment à partir un Double (exemple 0xAABBCCDD), je peux obtenir les 4 valeur de chaque octet :

char var1=0xAA
char var2=0xBB
char var3=0xCC
char var4=0xDD

Je ne vois pas comment faire sur le plan mathématique. Quelqu'un peut me donner la sol ?

merci pour la reponse.

Xavier.

8-)

4 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
23 avril 2004 à 16:33
0xAABBCCDD un Double ??? un DWORD ok.

DWORD d = 0xAABBCCDD;
//char var4=0xDD
var4 = (char) (d >> 24);

//char var2=0xBB
var2 = (char) ((d >> 8) & 0xFF);

ciao...
BruNews, Admin CS, MVP Visual C++
0
raidentr Messages postés 35 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 14 mai 2004
23 avril 2004 à 17:48
Ok,

J'utilise Visual C++ 6.0.

Quand je déclare une DWORD, le compil déclare une erreur de syntaxe.

Y-a-til un entête particulier à inclure pour que ca marche ?

En fait c'est du C++, je cherchait à le faire en C car je ne maitrise pas le C++, mais pourquoi pas.

Merci d'avance
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
23 avril 2004 à 17:54
DWORD n'est pas C ou C++, rien que un typedef de unsigned int.
C'est declare par #include <windows.h>
Tu peux appeler cela un long, sera toujours un 32 bits.

ciao...
BruNews, Admin CS, MVP Visual C++
0
raidentr Messages postés 35 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 14 mai 2004
24 avril 2004 à 07:15
OK,

Merci c'est clair.
0
Rejoignez-nous