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 :

pointer sur unsigned char


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 41
    Points : 26
    Points
    26
    Par défaut pointer sur unsigned char
    Bonjour à tous
    je veut appeler une méthode qui n'est pas la mienne mais j'ai sa documentation qui contient titre de méthode et ses paramètres. Mon problème ce que pour le 2éme paramètre il me demande un
    pointeur sur unsigned char
    alors j'ai écrit le code comme ceci :

    Code C++ :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    unsigned char *id;
            id=new unsigned char;
    	*id=(unsigned char)159;
            res=cdb.GetUser(MORPHO_USER_ID_MAXLEN,id,u);
    mon probléme se que cette id
    va étre enregisté dans la base d'une pointeuse d'emprunt ça marche mais lors de l'affichage de contenue de base sur une interface graphique c++ n'affiche pas 159 mais il affiche des caratéres uncompréhensible comme des carreaux et y et Y avec chapeau

    alors j'ai modifier mon code comme ceci:

    Code C++ :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    unsigned char id;
            //id=new unsigned char;
    	id=(unsigned char)159;
            res=cdb.GetUser(MORPHO_USER_ID_MAXLEN,&id,u);

    il affiche des carreaux encore et des I avec des chapeaux
    je n'ai pas compris ce quoi mon erreur et comment proceder pour corriger ceci
    Merci pour vos aides

  2. #2
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 533
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 533
    Points : 6 709
    Points
    6 709
    Par défaut
    Bonjour,

    c'est simplement que le caractère de code 159 se représente par un I avec un ^

    les caractères 'normaux' vont des codes ASCII 32 (espace) à 126 (~), 159 c'est donc au delà et sa représentation dépend du jeu de caractères utilisé et donc par exemple de votre localisation

    A priori, vu que la chose vous demande un pointeur sur des unsigned char, cela veut simplement dire que vous devez fournir une chaine de caractères, par exemple "159". Le fait que les caractères fournis soit unsigned n'ayant pas d'importance tant que leur code est inférieur à 128
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  3. #3
    Invité
    Invité(e)
    Par défaut
    L'unsigned char * que demande ta fonction est probablement une chaine de caractères "façon C", c'est à dire une série de caractères avec un 0 pour en indiquer la fin. Par exemple, la chaine "159" se représente comme un tableau de 4 caractères ('1', '5', '9' et 0), et pour la passer tu dois transmettre à ta fonction un pointeur sur le premier caractères.

    Pour la passer à ton programme, tu peux soit utiliser une string, soit un tableau de caractères

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    string s="mon message";
    cdb.GetUser(MORPHO_USER_ID_MAXLEN,s.c_str(),u);
    La fonction c_str() convertit la chaine en un pointeur, ie le type que tu veux

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    unsigned char ch[]="mon texte";
    cdb.GetUser(MORPHO_USER_ID_MAXLEN,ch,u);
    Francois

  4. #4
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 41
    Points : 26
    Points
    26
    Par défaut
    Merci pour vos aides
    je suis très heureux d'avoir une réponse assez très vite
    Que Dieux vous protège

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

Discussions similaires

  1. adresse de pointeur sur unsigned char
    Par info21 dans le forum C
    Réponses: 2
    Dernier message: 15/04/2010, 18h00
  2. [PIC] Débutant question sur "unsigned char"
    Par lcoulon dans le forum Débuter
    Réponses: 21
    Dernier message: 08/10/2009, 22h43
  3. Décalage de bit sur unsigned char [8]
    Par dboulange dans le forum C++
    Réponses: 14
    Dernier message: 26/07/2005, 14h10
  4. Pointer sur un fichier FILE *
    Par Biou Pink Powa dans le forum C
    Réponses: 3
    Dernier message: 29/01/2004, 14h45

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