Convertir HEXA vers ASCII par ptrs [Résolu]

Signaler
Messages postés
780
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
16 avril 2009
-
Messages postés
780
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
16 avril 2009
-
Bonjour,


Je souhaite simplement afficher la valeur d'un handle. Pour cela je dois convertir un chiffre HEXA en ASCII.


Je ne souhaite pas utitiler wsprintf(chaine, "%8X", Handle), ni atoi(Handle, chaine, 16), pour question de perfs!





J'ai donc vite fait ceci (ça marche), mais j'aimerais qu'on me le valide :





// hWnd = handle quelconque d'une fenêtre


int j;


char szText[16], *q;





q = szText; // szText contiendra resultat


*q++ '0'; *q++ 'x';


for(j = 28; j >= 0; j-=4) {


*q = (BYTE)((int)hWnd >> j) & 0xF;


if(*q > 9) *q += 'A' - 10;


else *q += '0';


q++;


}


*q++ = 0; // terminateur NULL





Y'a-t-il un moyen plus simple et/ou plus rapide?




Bye

Urgo

2 réponses

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
A première vu me semble bon (coté code et perf).
Messages postés
780
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
16 avril 2009
1
Oui, j'ai re-vérifié et ça m'a l'air bon aussi :)



Merci à toi.



Bye
Urgo