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 :

Pointeur, structure, allocation mémoire


Sujet :

C

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Points : 3
    Points
    3
    Par défaut Pointeur, structure, allocation mémoire
    Bonjour,
    J'ai une question concernant l'allocation mémoire d'un pointeur sur une structure.
    J'ai ces deux structures. Ui1 correspond à un octet, soit un char.
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    typedef struct struct_cartes
    {
        Ui1 valeur;
        Ui1 couleur;
        Ui1 utilisation;
    } Cartes;
     
    typedef struct struct_paquet
    {
        Cartes* cartes[54];
    } Paquet;

    Quand je fais
    Qu'est ce qui est réservé en mémoire? Un pointeur vide et je doit allouer la mémoire dynamiquement. Un Pointeur sur 54 autres pointeurs? Ou tout est alloué et je peu déjà accéder à valeur, couleur, utilisation?

    Merci de votre éclaircissement
    Cordialement
    Rirola12

  2. #2
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par rirola12 Voir le message
    Quand je fais
    Qu'est ce qui est réservé en mémoire? Un pointeur vide et je doit allouer la mémoire dynamiquement. Un Pointeur sur 54 autres pointeurs? Ou tout est alloué et je peu déjà accéder à valeur, couleur, utilisation?
    Uniquement un pointeur, qui s'il n'est pas de portée globale, contient une valeur indéterminée, autrement NULL.
    Cordialement.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Points : 3
    Points
    3
    Par défaut
    Merci de votre réponse.
    Je dois donc tout allouer dynamiquement.

    Cordialement,
    Rirola12

  4. #4
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 395
    Points : 23 758
    Points
    23 758
    Par défaut
    Citation Envoyé par rirola12 Voir le message
    Merci de votre réponse.
    Je dois donc tout allouer dynamiquement.

    Cordialement,
    Rirola12
    Pas forcément, tu peux aussi déclarer une structure de la même façon que tu as déclaré ton pointeur :

    Là, l'espace consacré à ta structure est bien réservé. Ensuite, soit tu alloues ton pointeur avec l'adresse de cette instance :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Paquet paquet;
    Paquet * monpaquet;
     
    monpaquet = &paquet;
    … soit tu utilises directement cette adresse (avec « & ») partout où on attend un pointeur.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Points : 3
    Points
    3
    Par défaut
    Merci pour ce complément

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 07/10/2010, 20h16
  2. Pointeur sur fonction et allocation mémoire
    Par Captain_JS dans le forum C++
    Réponses: 4
    Dernier message: 31/07/2008, 09h55
  3. Réponses: 19
    Dernier message: 20/02/2008, 12h03
  4. Réponses: 6
    Dernier message: 24/03/2006, 18h24
  5. [Pointeur] Allocation mémoire
    Par Rayek dans le forum Langage
    Réponses: 22
    Dernier message: 20/05/2005, 10h26

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