C - pointeur sur une structure, petit blanc
Résolu
silentData
Messages postés
201
Statut
Membre
-
silentData Messages postés 201 Statut Membre -
silentData Messages postés 201 Statut Membre -
Bonjour,
J'ai un petit soucis :
- J'ai une structure qui contient des entiers en autre.
Dans une fonction, j'ai un pointeur vers l'une de ces structures.
J'ai essayé ceci :
Et avec la notation objet à la C++ :
Je suis certainement un boulet, est-ce que qqun peut m'éclairer ?
Merci beaucoup, bonne journée !
J'ai un petit soucis :
- J'ai une structure qui contient des entiers en autre.
Dans une fonction, j'ai un pointeur vers l'une de ces structures.
J'ai essayé ceci :
Matrice* m; //Matrice est ma structure (*m).nbLigne = 5; //Exception EX_BAD_ACCESS à l'exécution
Et avec la notation objet à la C++ :
Matrice* m; //Matrice est ma structure m->nbLigne = 5; //Là, ca compile pas
Je suis certainement un boulet, est-ce que qqun peut m'éclairer ?
Merci beaucoup, bonne journée !
2 réponses
-
Tu as oublié d'allouer ton pointeur, après la déclaration du pointeur, rajoute la ligne suivante :
m = (Matrice *) malloc(sizeof(Matrice));
Le C accepte les -> quand tu as un pointeur, tu peux faire : m->nbLigne = 5;
Et n'oublie pas de désallouer le pointeur quand tu n'en a plus besoin : free(m); -
Je savais bien que j'avais oublié quelque chose !
Merci beaucoup !!