Comment convertir un code ascii en hexa

Fermé
vampyer972 - 19 mars 2004 à 21:10
 loupius - 22 avril 2009 à 17:38
salut,
pouvez vou me dire quelle methode a utiliser pour convertir de l'ascii en hexa, en utllisant le language C ou C ++,
merci.
A voir également:

7 réponses

Bah tu utilise la division par 16:
Exemple:
(int) 1024 / 16 = 64 reste 0
(int) 64 / 16 = 4 reste 0
(int) 4 / 16 = 0 reste 4
et tu prend les reste = 400 en hexa
autre exemple:
245 / 16 = 15 reste 5
15 / 16 = 0 reste 15
kan le reste > 9 alors tu tranforme en lettre: 10=A 11=B ... 15=F
cela donne F5

En algo ca donne a peut prés ca:
chiffre=245;
int tab[5]; // Nombre de caractere hexa max entier= FFFF"
int i=0;

while ( quo !=0)
{
quo= chiffre / 16 ;
reste= chiffre % 16;
if (reste>9)
{
switch(reste)
case 10: tab[i]=A;break;
case 11: tab[i]=B;break;
...
}
else
{
tab[i]=fonction_de_convertion_en_chaine(reste);
// je me souvient plus LOL
}
i++;
}
aprés tu inverse le tableau sinon ca va etre a l'envers
ENfin c a peut prés ca
C'est fai en vrac donc...
voili voilou
++
0
Ah oui, j'avais pas vu ke c'est pour de l'ascii, donc 256 possibilités donc tu peux réduire le tableau à 3 au lieu de 5.
255=0xFF
0
oula la ....
lol, il n'y a pas plus simple. Voici mon code pour convertir de l'hexa a l'ascii, ais je recherche a faire la convertion de l'ascii ver l'hexa:

{
QString str( lineEditSaisieHexa->text());

bool ok = false;
int hex = str.toInt( &ok, 16 );

QString conv;
conv = toascii(conv.setNum(hex,10).toInt());

lineEditConvAscii-> setText(conv);
}

desoler de t'imposer cette migraine, lol
0
philaz
Messages postés
980
Date d'inscription
dimanche 9 novembre 2003
Statut
Contributeur
Dernière intervention
6 février 2011
247
20 mars 2004 à 05:27
Hello,
peut-être çà ?

// déclarations
unsigned char hextab[] = "0123456789ABCDEF";
unsigned char car;

// affichage d'un byte sous forme hexa
putch(hextab[(car >> 4) & 0x0F]);
putch(hextab[car & 0x0F]);


~~~~~ Eh oui, l'informatique n'est ~~~~~
~~~ qu'une suite de problèmes...  ;-)  ~~~
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
je veux savoir comment je peux convertir un code exadécimale en ascii en utilisant le language c
0
[quote]Je voudrais savoir comment je peux convertir un code hexadécimale en ascii en utilisant le langage c, merci [/quote]
up
0
Le plus simple mais probablement le plus lourd en terme de poids de l'exécutable, si on considère que 'car' est un caractère ascii (entre 0 et 255):
#include <stdio.h>
char hexa[3];
fprintf (hexa, "%02X", car);
0