Caractères accentués et HiTech C Lite
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Caractères accentués et HiTech C Lite



  1. #1
    r4ph

    Caractères accentués et HiTech C Lite


    ------

    Salut à tous!

    Je suis en train de galérer avec un projet a base de PIC qui affiche des messages, stockés sous la forme de chaines de caractères constantes (donc en mémoire programme).

    Le problème est le suivant, mon compilateur HiTech C Lite ne veut pas prendre en compte la table ASCII étendue et de ce fait les caractères accentués... Ce qui est normal, il utilise la table ASCII sur 7 bits suivant ce que dit le manuel.

    Voila ce que j'ai dans mon programme et qui pose problème:

    const unsigned char *message1 = "123 nous irons au bois!";
    const unsigned char *message2 = "Comment vas-tu yau de poêle?";

    La première ligne pas de soucis, par contre, la deuxième crée une erreur a la compilation:

    Error [228] D:\raph\pics\projets C\carte_16f685\main.c; 59.33 caractère (0EA) interdit

    Ce qui m'ennuie c'est que je reviens sur ce projet après quelques semaines et qu'avant, cela me faisait une erreur au premier build, mais le fait de refaire un deuxième build passait sans erreur et du coup me permettait d'afficher des caractères accentués. En trichant puisque il y avait une erreur quand même, mais ça passait...

    Qu'en pensez-vous?

    -----

  2. #2
    invite03481543

    Re : Caractères accentués et HiTech C Lite

    Bonsoir,

    oui il faut utiliser l'astuce suivante:

    \xFF ou FF est le code ASCII etendu.

    Par exemple:
    Code:
    const char name [] = "Bj\xf8rk" ; // pour Bjørk
    ou encore:
    Code:
    const char name [] = "po\xeale" ; // pour poêle
    @+
    Dernière modification par HULK28 ; 23/04/2012 à 01h24.

  3. #3
    r4ph

    Re : Caractères accentués et HiTech C Lite

    Merci beaucoup!

    Je pensais bien qu'il devait y avoir une astuce!

    A bientôt, donc!

    Raph

  4. #4
    r4ph

    Re : Caractères accentués et HiTech C Lite

    Rebonjour,

    je déterre un peu cette discussion parce que l'astuce d' Hulk fonctionne très bien sauf dans le cas ou le caractère suivant le \x87 par exemple pour un ç est de 0 à 9, de a à f ou de A à F. Le compilateur semble prendre en compte tout ce qui suit le \x qui peut correspondre a un chiffre (de 0 à F) comme la valeur ASCII même si du coup elle dépasse 0xFF. C est facile a contourner pour le ça par exemple en écrivant "\x87\x61" mais je me demandais quand même pourquoi le compilateur ne prenait pas en compte juste les 2 premiers digits (en hexa bien sur). Ou encore si il y avait moyen toujours pour le ç en exemple de l' écrire en décimal, j' ai essayé d' écrire "\135" ce qui affiche le caractère ] dont le code ASCII décimal est le 93 mais qui en octal correspond bien a 135.

    Une suggestion?

    Très bon week end en attendant!

  5. A voir en vidéo sur Futura
  6. #5
    r4ph

    Re : Caractères accentués et HiTech C Lite

    Et, Hup-là!

  7. #6
    invite03481543

    Re : Caractères accentués et HiTech C Lite

    A priori ça dépend uniquement du compilateur, je ne saurai t'expliquer le comment du pourquoi.
    Tu peux toujours poser ta question sur le site de Microchip vu que ce sont eux qui supportent HitechC maintenant:
    http://www.microchip.com/forums/
    @+

  8. #7
    r4ph

    Re : Caractères accentués et HiTech C Lite

    Il me semblait bien que ça venait du compilateur, bon deja j'ai une solution qui fonctionne. Peut-être devrais-je me mettre a l'assembleur un jour...

    En tout cas, merci pour tout et a bientôt!

Discussions similaires

  1. pic16f628A, hitech et les timers...
    Par MofK dans le forum Électronique
    Réponses: 19
    Dernier message: 29/12/2008, 12h38
  2. Problème avec MPlab et Hitech PICC18
    Par invite36ee2dcb dans le forum Électronique
    Réponses: 3
    Dernier message: 07/03/2007, 20h15
  3. Caractères accentués dans l'aide de Statistica
    Par invite24357dd0 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 21/02/2007, 13h36
  4. Domaines accentués:ça fonctionne
    Par invite810dfbbe dans le forum Internet - Réseau - Sécurité générale
    Réponses: 2
    Dernier message: 23/02/2004, 00h10
Découvrez nos comparatifs produits sur l'informatique et les technologies.