IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

conversion de 'é' en 'e' dans une chaine de caractères.


Sujet :

C++

  1. #1
    Inscrit
    Inscrit en
    Juin 2007
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 161
    Points : 60
    Points
    60
    Par défaut conversion de 'é' en 'e' dans une chaine de caractères.
    bonjour à tous,

    J'ai besoin de convertir les caractères spéciaux dans une chaine de caractères.

    Par exemple, les caractères 'é', 'è', 'ê' en 'e'. et le caractère 'à' en a. Ainsi de suite.

    J'ai penser au codes ascii mais j'ai eu des problèmes car le code ascii de 'é' est 233 mais le bout de code suivant me retourne d'autres résultat.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    char  ch[];
    ch = "Socièté";
    for (int i=0;i<strlen(ch);i++) {
    printf ("%d ",ch[i]);
    }
    résultat: 83 111 99 105 -61 -88 116 -61 -87

    Merci de me répondre.



    Résultat:

  2. #2
    Membre habitué
    Inscrit en
    Avril 2008
    Messages
    155
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 155
    Points : 158
    Points
    158

  3. #3
    Inscrit
    Inscrit en
    Juin 2007
    Messages
    161
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 161
    Points : 60
    Points
    60
    Par défaut
    Le problème c'est que il ne me retourne pas le code asciidu caractère il me retourne deux valeur négatives.

    Par exemple pour à --> -61 et -96
    et pour é --> -61 et -87.

    et pour les autres caractères je reçois le bon code ascii.

    Comment puis-je reçevoir la réelle valeur du code ascii.

    Merci.

  4. #4
    Invité(e)
    Invité(e)
    Par défaut
    Bonjour,

    Je pense que ton compilateur considère les char comme signés, donc allant de -128 à +127.

    Peut être faudrait il déclarer ch comme unsigned char [] plutôt que comme char[].

    De plus, strlen et printf, c'est plutôt du c, en c++ la classe string est assez pratique....

    PS : chez moi, ce code ne compile pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    file.cc:5: error: storage size of `ch` isn`t known
    file.cc:6: error: cannot convert `const char[8]` to `<type error>` in assignment

Discussions similaires

  1. Réponses: 9
    Dernier message: 23/12/2013, 16h40
  2. Réponses: 0
    Dernier message: 30/03/2009, 09h49
  3. Récuperer un nombre dans une chaine de caractère
    Par ColonelHati dans le forum C
    Réponses: 4
    Dernier message: 27/04/2005, 14h50
  4. [VB.NET] Recherche dans une chaine de caractères
    Par Pleymo dans le forum Windows Forms
    Réponses: 12
    Dernier message: 09/04/2005, 10h25
  5. [C#] Une variable dans une chaine de caractères...
    Par GlorfindelHebril dans le forum Windows Forms
    Réponses: 9
    Dernier message: 31/03/2005, 14h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo