[débutant]langage c ecriture CODE ASCII

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
Configuration: Windows XP
Safari 525.19

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. 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.
    1. Contributeur
      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.
  2. 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. Contributeur
      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
  3. Contributeur
    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. Contributeur
      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. ^^
  4. Contributeur
    Salut,
    Le code ascii en C ?
    Pour afficher tu fais juste :
    printf("%c",0xcodeHexa);

    Cdlt
    1. Merci feedy
      donc
      printf("%c",0xcodeHexa); et la solution à mon problème