stgi02
Messages postés90Date d'inscriptionsamedi 18 février 2006StatutMembreDernière intervention 6 décembre 2006
-
27 mars 2006 à 13:17
badboy38
Messages postés95Date d'inscriptionvendredi 14 janvier 2005StatutMembreDernière intervention 4 mars 2013
-
27 mars 2006 à 18:01
salut,
j' ai une variable char qui reçu du décimal et j' aimerai que cette variable soit converti directement en hexa, j ai pensé a uiliser 0x mais cela ne fonctionne pas.
Dvdmizo
Messages postés74Date d'inscriptionjeudi 6 mars 2003StatutMembreDernière intervention 3 mai 2006 27 mars 2006 à 14:33
salut,
il n'y a pas de conversion particulière (si c'est bien un char et pas
une chaine de caractères) le simple fait de mettre une valeur dedans et
elle est automatiquement disponible en decimal ou en hexa (c'est la
même valeur il n'y a pas de différences)
par contre si tu veux l'afficher tu as le choix (juste pour l'exemple)
si tu as :
char c ; // un caractère, un code ou ce que tu veux
c = 48 ; // decimal
// pour l'afficher en décimal
printf("en decimal ça donne : %d", c) ; // affiche : 48
// pour l'afficher en caractère ASCII
printf("en decimal ça donne : %c", c) ; // affiche : '0'
// pour l'afficher en décimal
printf("en decimal ça donne : %X", c) ; // affiche : 30 (ce qui correspond à 0x30)
à noter que si tu utilises %x (<- x minuscule) toutes les
lettres qui peuvent se trouver dans ta valeur hexa seront écrites en
minuscules tandis que %X (<-X majuscule) les affichera en majuscules.
pour l'exemple j'ai utilisé la fonction printf après y'a d'autre moyens
de récupérer la valeur sous forme de chaine, mais pour ce qui est de la
valeur il n'y a aucune conversion à faire.
badboy38
Messages postés95Date d'inscriptionvendredi 14 janvier 2005StatutMembreDernière intervention 4 mars 2013 27 mars 2006 à 18:01
Salut,
en fait, tu dois faire une boucle et utiliser les fonctions contenues
dans string.h pour comparer les valeurs les une après les autres, et
les multiplier par le multiple de 16 correspondant. Si ti commence par
le premier caractère, n'oublies pas avant de commencer de demander la
taille de la variable char (le nombre de caractère).