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

 Delphi Discussion :

Code ASCII d'un caractère


Sujet :

Delphi

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 115
    Points : 62
    Points
    62
    Par défaut Code ASCII d'un caractère
    Bonjour à tous !

    je fais encore appel à vous parce que j'ai une petite question.

    J'ai une varible Chaine, de type String, qui contient 'Blabla'.

    Je voudrais connaître le code ASCII de chacun des caractères de Chaine.

    Je sais que si j'écris cela me donnera 'H' (car le code ASCII de 'H' est $48... Mais, du coup, quelle est la fonction inverse à Char ?

    Voila, je vous remercie !

  2. #2
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Salut,

    C'est la fonction Ord si je ne m'abuse.

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 115
    Points : 62
    Points
    62
    Par défaut
    Oui, mais si je fais Ord('H'), il me met bien sur une erreur...
    Ord attend un Integer.

  4. #4
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Il n'y a pas de quote à mettre. C'est ord(H) (et toujours en majuscule).

  5. #5
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 115
    Points : 62
    Points
    62
    Par défaut
    Oui mais là aussi il me met une erreur : il croit que H est une variable et il met l'erreur "Identificateur non déclaré"...

  6. #6
    Membre chevronné

    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 935
    Points : 1 765
    Points
    1 765
    Par défaut
    Ord('H') fonctionne chez moi et c'est bien normal ...

    Ord(H) ne peut marcher que si H est une variable.

    Ord attends un Ordinal et non pas un integer ...

    Par contre, Ord n'est pas l'inverse de Char, Ord est l'inverse de Chr (fonctionne presque pareil ...)

  7. #7
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 115
    Points : 62
    Points
    62
    Par défaut
    Oups, autant pour moi...

    Ord('H') marche...

    Merci à toi ero-sennin !

  8. #8
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 115
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par mick605 Voir le message
    Ord('H') fonctionne chez moi et c'est bien normal ...

    Ord(H) ne peut marcher que si H est une variable.

    Ord attends un Ordinal et non pas un integer ...
    Vi, tu as tout à fait raison... C'est moi qui fait de la merde depuis le début.

  9. #9
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Oula, tu m'as embrouillé là.
    Je suis entrain de dire n'importe quoi!
    C'est bien Ord('H')! Il doit avoir un autre souci ailleurs !

    Faut dire, je n'ai pas Delphi sous la main.


    EDIT

    Ah,ba voilà

  10. #10
    Membre éclairé Avatar de peter27x
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 029
    Points : 757
    Points
    757
    Par défaut
    Citation Envoyé par ero-sennin Voir le message
    Il n'y a pas de quote à mettre. C'est ord(H) (et toujours en majuscule).
    Gné !?

    ...

  11. #11
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Citation Envoyé par peter27x Voir le message
    Gné !?

    ...
    oui, comme dit dans mon post d'avant, Sancha m'a un peu embrouillé, et c'est bien Ord('H') qu'il faut prendre (donc avec les quotes). Et le H doit toujours être en majuscule il me semble(sinon ça ne fonctionne pas, je pense).

  12. #12
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 115
    Points : 62
    Points
    62
    Par défaut
    Et le H doit toujours être en majuscule il me semble(sinon ça ne fonctionne pas, je pense).
    Si ça fonctionne mais ça ne renvoie pas le code ASCII de 'H' mais celui de 'h'.

  13. #13
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Citation Envoyé par Sancha Voir le message
    Si ça fonctionne mais ça ne renvoie pas le code ASCII de 'H' mais celui de 'h'.
    je suis vraiment un là!

  14. #14
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 115
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par ero-sennin Voir le message
    je suis vraiment un là!

    Mais non !
    c'est ma faute : c'est moi qui t'embrouille.

  15. #15
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Oui, j'ai la tête

    un ch'ti si c'est OK alors ?

  16. #16
    Membre éclairé Avatar de peter27x
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 029
    Points : 757
    Points
    757
    Par défaut
    Citation Envoyé par ero-sennin Voir le message
    oui, comme dit dans mon post d'avant, Sancha m'a un peu embrouillé, et c'est bien Ord('H') qu'il faut prendre (donc avec les quotes). Et le H doit toujours être en majuscule il me semble(sinon ça ne fonctionne pas, je pense).
    Oui, je sais... c'était pour remuer le canif...

  17. #17
    Membre éprouvé
    Avatar de Dr.Who
    Inscrit en
    Septembre 2009
    Messages
    980
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Septembre 2009
    Messages : 980
    Points : 1 294
    Points
    1 294
    Par défaut
    tu veux la méthode magique ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    type
      TByteOrChar = record
        case integer of
          0:(Bin : {$IFDEF UNICODE}Word{$ELSE}Byte{$ENDIF});
          1:(Chr : Char);
      end;
    char -> ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    var BoC : TByteOrChar;
    begin
      BoC.Chr := 'H';
      caption := format('%.*x', [SizeOf(char) shl 1, BoC.Bin]);
    end;
    ? -> char
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    var BoC : TByteOrChar;
    begin
      BoC.Bin := $48;
      caption := BoC.Chr;
    end;
    et hop

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment récupérer le code ASCII d'un caractère?
    Par Blue_Strike dans le forum Delphi
    Réponses: 6
    Dernier message: 04/05/2007, 00h38
  2. Obtenir le code ascii d'un caractère
    Par patrick92100 dans le forum Tcl/Tk
    Réponses: 2
    Dernier message: 15/02/2007, 15h56
  3. transcoder des codes ascii en caractères
    Par gillou026 dans le forum Langage
    Réponses: 6
    Dernier message: 06/03/2006, 09h25
  4. affichage caractère à partir du code ascii
    Par capone dans le forum C++
    Réponses: 4
    Dernier message: 19/10/2005, 21h51
  5. [PERL]Remplacer un caractère dans on a le code ASCII
    Par LE NEINDRE dans le forum Langage
    Réponses: 4
    Dernier message: 30/09/2005, 15h13

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