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 :

Chr du VB en C (ou c++)


Sujet :

C

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 63
    Points : 42
    Points
    42
    Par défaut Chr du VB en C (ou c++)
    Bonjour,

    Ne connaissant pas le VB je cherche à traduire cette ligne en C ou C++ mais malheuresement mes recherches n'ont rien donner.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    st = st & Chr("&H" & line.Substring(u, 2))
    J'ai trouver plein de choses mais aucune ne marche, d'aprés ce que j'ai compris ce le convertit le hexadécimal en ascii et je n'ai rien vu de tel en C.

    Ce qui est bizzare c'est que si je fais

    Cela me fais un signe ( un genre de tréfle) alors que le Chr du VB mais fais un |.
    Si quelqu'un veux bien m'aider.

    Petite présision : Je récupére dans un char quelque choses comme "05" et il me faudrais le convertir en | , 73 => s ....

  2. #2
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    En Visual Basic, l'opérateur & sert à concaténer des chaînes de caractères et la fonction Chr sert à convertir un code de caractère (un entier) en caractère (sachant qu'un caractère en VB est tout simplement une chaîne de caractères composé d'un seul caractère). Dans ton exemple, une chaîne est donnée en argument de Chr mais elle sera automatiquement convertie en entier.

    En langage C, il n'y a pas d'opérateur de concaténation. On a par contre la fonction strcat qui fait bien le boulot. Pour convertir un code de caractère en caractère, il n'y a rien à faire : le code du caractère représente déjà le caractère lui-même.

    Enfin, le caractère de code 0x05 (ou &H05 en écriture Basic) ne correspond ni à une treffle ni au caractère | mais à un caractère de contrôle. Ce n'est donc pas un caractère imprimable. Du coup, lorsqu'on tente de l'afficher, le logiciel d'affichage le converti en treffle, en point, en barre verticale, ou en n'importe quel autre caractère censé suggérer une erreur d'affichage.

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

Discussions similaires

  1. chr(34) et chr(39)
    Par nicolb dans le forum ASP
    Réponses: 3
    Dernier message: 01/05/2005, 22h02
  2. [TP7] Fontes au format CHR
    Par irios dans le forum Turbo Pascal
    Réponses: 6
    Dernier message: 09/03/2005, 21h53
  3. Réponses: 2
    Dernier message: 28/01/2005, 06h43
  4. Réponses: 10
    Dernier message: 24/01/2005, 17h00
  5. problème de chr(39)
    Par Pierre FORAZ dans le forum XMLRAD
    Réponses: 10
    Dernier message: 11/10/2004, 11h39

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