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++Builder Discussion :

Equivalent de la fct Chr() en VB avec c++ builder6


Sujet :

C++Builder

  1. #1
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    24
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 24
    Par d�faut Equivalent de la fct Chr() en VB avec c++ builder6
    Bonjour et bon dimanche � tous.
    J'aimerais savoir quel �tait l'�quivalent avec c++ builder6 de la fonction Chr() issue du VB ?
    Merci d'avance
    Cordialement.

  2. #2
    Expert confirm�

    Avatar de pottiez
    Homme Profil pro
    D�veloppeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : D�veloppeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par d�faut
    Je ne sais pas pourquoi tu veut une tels fonction, mais si tu met une valeur enti�re (0 � 255) dans une variable de type char, cette variable t'affichera simplement le caract�re correspondant (mais pas l'entier)

  3. #3
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    24
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 24
    Par d�faut
    En faite ce que je veux faire c'est que je recup�re un serie d'octet � partir de ma RS 232, ses octets que j'ai r�cup�rer doivent afficher un caract�re ASCII
    Exemple :
    4142434445 deviennent ABCDE quand je veux les afficher dans un label ou Memo ect .. et s'est ici que sa bloque je n'arrive pas � afficher ses caract�res.
    A+

  4. #4
    Expert confirm�

    Avatar de pottiez
    Homme Profil pro
    D�veloppeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : D�veloppeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par d�faut
    Si tu re�oit des octets de ta liaison RS232, tu peut donc les mettre dans un tableau de char, et ces octets seront donc directement convertie en la lettre correspondante

  5. #5
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    24
    D�tails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 24
    Par d�faut
    Salut
    Exemple :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
      char buf[255];
     
    ComPort1->Read(buf,16); //Ici je reçois 414243444546
           tab[0]=buf[0]; //'41';
           tab[1]=buf[1];//'42';
           tab[2]=buf[2];//'43';
           tab[3]=buf[3];//'44';
           tab[4]=buf[4];//'45';
           tab[5]=buf[5];//'46';
     
           Memo1->Lines->Add(AnsiString(tab)); //Je doit afficher normalement ABCDEF
    A chaque caract�re je dois ajouter '\x' pour que se soit convertis par mon Memo mais pour le faire j'ai essayer plusieur chose mais sa tourne pas.

  6. #6
    Expert confirm�

    Avatar de pottiez
    Homme Profil pro
    D�veloppeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : D�veloppeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par d�faut
    Salut,
    je n'ai pas BCB sous la main la, mais je testerais ce soir et je te dirais quoi

  7. #7
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 412
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 412
    Par d�faut
    Salut !

    En fait tu pourrais utiliser un AnsiString, directement :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    AnsiString N = ""; //vide au départ d'une ligne
    char c;
    for(int j = 0; j < 6; j++)
        {
        c = Buf[j];
        //On réalise la concaténation
        N = N + (AnsiString)c;
        }
    Memo1->Lines->Add(N);
    Il est possible aussi de faire une truc un peu plus.... tordu mais.... tr�s efficace :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     
    Byte c = Buf[6]; //pour sauvegarder ce caractère du buffer
    Buf[6] = 0; //On crée une chaîne AZT
    char *pString = (char*)&Buf[0];
    Memo1->Lines->Add(pString);
    Buf[6] = c; // on restaure le caractère du buffer qui a servit comme NUL pour l'AZT
    A plus !

Discussions similaires

  1. [XL-2010] Fonction Chr() dans VBA avec Excel 2010
    Par Frenchie_lol dans le forum Macros et VBA Excel
    R�ponses: 5
    Dernier message: 20/06/2010, 22h20
  2. l'equivalent en c# de chr(255) (vb)
    Par lasrevinu dans le forum C#
    R�ponses: 4
    Dernier message: 22/03/2010, 15h52
  3. Equivalent de la fct COMPLEV en sas 8.2
    Par melmouj dans le forum SAS Base
    R�ponses: 0
    Dernier message: 11/05/2009, 17h02
  4. Equivalent de la fct urlencode (php) en AS ?
    Par escteban dans le forum Flash
    R�ponses: 2
    Dernier message: 16/04/2007, 00h13
  5. R�ponses: 2
    Dernier message: 28/01/2005, 06h43

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