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

MFC Discussion :

[MFC] Pb de pointeur


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Par défaut [MFC] Pb de pointeur
    Salut,

    Donc en fait j'ai un buffer dont je voudrai récupérer les valeur 4 à 4, c'est à dire faire des sauts afin de récupérer les octets par paquets de 4. J'utilise cette méthode:

    // Variables

    BYTE BufferReceive1[810];
    ULONG SizeReceive1;
    char valeur[200];
    PBYTE pVal = BufferReceive1 + 4; // en sachant que les 4 premiers ne m'interresse pas donc je les saute
    BYTE Vals[4];
    LONG Moy = 0;
    ULONG Size = 0;
    ULONG j = 0;

    // Code

    Size = SizeReceive1/sizeof(ULONG);
    for (j = 0; j<Size; j++)
    {
    Vals[0] = pVal[3];
    Vals[1] = pVal[2];
    Vals[2] = pVal[1];
    Vals[3] = pVal[0];
    Moy += *((PLONG)Vals);
    pVal += sizeof(LONG);
    }
    Moy /= Size;
    sprintf(valeur,"%d mA", Moy);


    Est-ce que quelqu'un y voit une erreur ?

    Merci

  2. #2
    Membre expérimenté

    Inscrit en
    Mai 2005
    Messages
    132
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 132
    Par défaut
    Salut,

    a mon avis, il n'y a pas de problem grave, sauf

    sprintf(valeur,"%ld mA", Moy);

    Pour imprimé (U)LONG est meilleur utiliser %ld.

    Je l'ai essaye avec MSVC 6.0. En fait, ou est le problem ?!

    Fredy

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Par défaut
    mon probleme se situe au niveau de
    Moy += *((PLONG)Vals);

    est-ce que ça prend la valeur qui est dans pVal pour faire la moyenne ?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Par défaut
    La premùière fois que je passe dans la boucle il me renvoie
    0xfffffe71 sur Moy ce qui est logique mais la deuxiéme il devrai me renvoyer 1FFFFFCE2 car la 2eme valeur est la même et il me renvoi FFFFFCE2 donc je pencherai pour le type de Moy

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Par défaut
    En fait l'erreur se produit quand je divise Moy par Size il me renvoie un nombre abérant

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 44
    Par défaut
    Pb résolu
    y suffisait juste de changer le type de Moy en Long
    merci quand meme pour l'aide

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

Discussions similaires

  1. [MFC]Problème de pointeur
    Par bubulle63 dans le forum MFC
    Réponses: 2
    Dernier message: 09/06/2006, 15h20
  2. Réponses: 1
    Dernier message: 13/11/2005, 15h30
  3. [MFC]recup pos pointeur curseur dans CEdit
    Par lucky dans le forum MFC
    Réponses: 3
    Dernier message: 08/09/2005, 10h47
  4. [MFC] Problème pointeur sur une classe
    Par mick74 dans le forum MFC
    Réponses: 7
    Dernier message: 14/04/2004, 14h17
  5. [MFC] Problème de pointeur !!
    Par acastor dans le forum MFC
    Réponses: 7
    Dernier message: 19/03/2004, 15h50

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