Epractical Posté(e) le 15 mai 2009 Partager Posté(e) le 15 mai 2009 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 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Amour Posté(e) le 16 mai 2009 Partager Posté(e) le 16 mai 2009 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 ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Epractical Posté(e) le 16 mai 2009 Auteur Partager Posté(e) le 16 mai 2009 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 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Epractical Posté(e) le 16 mai 2009 Auteur Partager Posté(e) le 16 mai 2009 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 ! Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 16 mai 2009 Partager Posté(e) le 16 mai 2009 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). Lien vers le commentaire Partager sur d’autres sites More sharing options...
Epractical Posté(e) le 16 mai 2009 Auteur Partager Posté(e) le 16 mai 2009 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). Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 17 mai 2009 Partager Posté(e) le 17 mai 2009 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 % ) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Amour Posté(e) le 18 mai 2009 Partager Posté(e) le 18 mai 2009 Merci à toi Amour J'ai un peu rien fait là Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.