Posted May 15, 200916 yr Bonjour à tous Je dois faire mon projet de cryptage RSA en C et j'ai quasiment terminé J'ai juste un problème que je n'arrive pas à résoudre j'ai cherché sur Google mais je ne comprend. Voila j'ai un nombre au format long (dans une structure bref...) admettons j'ai long = 35; //Chiffre en Hexa et je souhaiterai le convertir et l'obtenir dans un char et avoir son équivalent en lettre (ascii) donc on devrait obtenir le caractère "#". Comment peut on faire ? Merci par avance, Willou
May 16, 200916 yr Euh si je ne m'abuse, # en hexa fait plutôt 23 apparemment, pas 35... Est-ce bien ce type de conversion que vous cherchez ?
May 16, 200916 yr Author Oui t'as raison j'ai regardé la colonne Décimal du nombre ASCII donc 35 fait le caractère 5 en ASCII. Bref j'obtiens bien le code ASCII en héxadécimal et je souhaite le convertir au caractère correspondant, qu'y a t il comme solution ? Willou
May 16, 200916 yr Author Hello J'ai trouvé la solution en fait je voulais convertir et le mettre le caractère décrypté sur le fichier, j'obtenais donc le Code ASCII du nbr en hexadécimal et je souhaitai l'écrire en caractère sur un fichier .txt J'ai donc utilise le code suivant : fprintf(fichier, "%c", contenu_fin_long[i]); fichier étant le pointeur de fichier contenu_fin_long étant le tableau de codes ASCII en hexa le tout est appliqué dans une boucle pour pouvoir balayer la chaine de caractère. Merci à toi Amour A Bientôt !
May 16, 200916 yr printf ("%c", (char) number); ou putchar (number) Sachant qu'un nombre n'est pas en hexa, c'est la même représentation que tu peux afficher soit en hexa soit en décimal (ou dans une autre base d'ailleurs).
May 16, 200916 yr Author L'inconvénient du printf ou putchar c'est qu'on le voit dans la forme que l'on souhaite. Mais cela n'enregistre pas dans une autre variable (à moins qu'il y ai une solution mais je suis novice en Langage c).
May 17, 200916 yr L'inconvénient du printf ou putchar c'est qu'on le voit dans la forme que l'on souhaite.Mais cela n'enregistre pas dans une autre variable (à moins qu'il y ai une solution mais je suis novice en Langage c). Il faut utiliser sprintf alors. Ou refaire le calcul à la main à base de division et modulo ( / et % )
Archived
This topic is now archived and is closed to further replies.