[débutant]langage c ecriture CODE ASCII

Fermé
yassinee Messages postés 233 Date d'inscription dimanche 15 mai 2005 Statut Membre Dernière intervention 26 novembre 2011 - 24 nov. 2008 à 18:20
yassinee Messages postés 233 Date d'inscription dimanche 15 mai 2005 Statut Membre Dernière intervention 26 novembre 2011 - 25 nov. 2008 à 15:48
Bonjour,
concernant le code ASCII ca s'écrit soit avec (ALT+nombre décimale) mais je ne sais pas comment l'écrire en Hexadécimale je fais (ALT+nombre HEX) mais ca marche pas
merci d'avance

6 réponses

Eclyps Messages postés 19 Date d'inscription jeudi 31 janvier 2008 Statut Membre Dernière intervention 13 janvier 2009 11
24 nov. 2008 à 19:43
T'as encore mieux :
printf("%d\n", 'A'); 

Et tu remplaces A par le caractère que tu veux, attention un caractère pas une chaine.
2
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
24 nov. 2008 à 20:56
Oui, sauf que ça va l'obliger à faire l'astuce ALT+code ascii pour afficher le caractère entre apostrophe. Donc, ça résout pas le problème. Ce qu'il veut je pense, c'est le contraire. A partir du code ascii, afficher le caractère.
0
Eclyps Messages postés 19 Date d'inscription jeudi 31 janvier 2008 Statut Membre Dernière intervention 13 janvier 2009 11
24 nov. 2008 à 23:29
Rien de plus simple :
printf("%c\n", 65); //Ça affiche 'A'


Pour avoir tous les caractères tu fais :
for(unsigned char c ; c < 255 ; c++)
      printf("%c\t%d\n", c, c);
1
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
24 nov. 2008 à 23:45
Oui, mais tu donnes le code décimal, et il parle de l'hexa.
Voilà pourquoi, il faut rajouter 0x devant.
printf("%c",0x65);
par exemple. Ce qui affichera e.
Cdlt
0
Eclyps Messages postés 19 Date d'inscription jeudi 31 janvier 2008 Statut Membre Dernière intervention 13 janvier 2009 11
25 nov. 2008 à 00:18
A oui désoler :( j'avais pas lu tous le titre xD.
1
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
25 nov. 2008 à 08:55
Je pense qu'en ait il veux parler de la méthode windows pour écrire les caractères étendus.
Si on regarde dans la table de caractère, il y a souvent un raccourci clavier en ALT+XXX. Si les caractères sont assez courant, XXX est un nombre décimal, sinon, c'est un nombre en HEXA. Mais le nombre en hexadécimal ne peut être taper au clavier. Je ne suis pas certain de la solution, mais il me semble qu'il faut convertir l'hexadécimal en décimal et mettre un 0 devant ou non pour l'utiliser avec ALT. Mais il faut voir que la plupart des caracères étendus NE SONT PAS ASCII ! Cette norme est basé sur un code 7 bits, soit 128 caractères, dont certains de contrôle, normalement tous accessible directement par le clavier.
1
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
25 nov. 2008 à 11:04
Oui, c'est ce que je pensais au début, mais vu que son titre mentionne le langage C...
Et vu que le monsieur ne répond pas. ^^
0

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

Posez votre question
yassinee Messages postés 233 Date d'inscription dimanche 15 mai 2005 Statut Membre Dernière intervention 26 novembre 2011 27
25 nov. 2008 à 15:48
Merci fiddy ca marche
1
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
24 nov. 2008 à 19:21
Salut,
Le code ascii en C ?
Pour afficher tu fais juste :
printf("%c",0xcodeHexa);

Cdlt
0
yassinee Messages postés 233 Date d'inscription dimanche 15 mai 2005 Statut Membre Dernière intervention 26 novembre 2011 27
25 nov. 2008 à 15:45
Merci feedy
donc
printf("%c",0xcodeHexa); et la solution à mon problème
0