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 :

incrémentation de pointeur


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 172
    Par défaut incrémentation de pointeur
    bonjour,

    j'aimerais savoir si quand je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    void* x;
    MA_STRUCT* y = (MA_STRUCT*)malloc(n*sizeof(MA_STRUCT));
     
    x = y+1;
    Est-ce que "x" va valloir "y" incrémenté de "sizeof(MA_STRUCT)" octets ou vaudra-t-il "y" incrémenté de 1 octet ?

    Merci d'avance.

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Incrémenté de sizeof(MA_STRUCT).
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 172
    Par défaut
    merci ^^

    EDIT : ça l'incrémente aussi de sizeof(MA_STRUCT) si je fais ça ? :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    x = ((MA_STRUCT*)x) + 1;
    Merci d'av.

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 104
    Par défaut
    EDIT : ça l'incrémente aussi de sizeof(MA_STRUCT) si je fais ça ? :
    Code :

    x = ((MA_STRUCT*)x) + 1;
    Oui.

    Par contre, en principe, il ne faut pas caster le malloc.

Discussions similaires

  1. Incrémentation de pointeur sur tableau
    Par Darkbatcher dans le forum C
    Réponses: 2
    Dernier message: 11/04/2012, 12h26
  2. Réponses: 7
    Dernier message: 07/11/2008, 18h58
  3. Incrémentation de pointeurs
    Par byonatane dans le forum Débuter
    Réponses: 3
    Dernier message: 07/06/2007, 09h36
  4. [DOS] Problème pour incrémenter un pointeur de chaîne
    Par Weedou dans le forum Assembleur
    Réponses: 1
    Dernier message: 09/04/2007, 20h51
  5. Incrémenter un pointeur sur un buffer de uchar
    Par Flo. dans le forum x86 32-bits / 64-bits
    Réponses: 6
    Dernier message: 12/12/2005, 08h38

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