C - pointeur sur une structure, petit blanc

Résolu/Fermé
silentData Messages postés 183 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 18 octobre 2013 - 10 mai 2011 à 13:27
silentData Messages postés 183 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 18 octobre 2013 - 10 mai 2011 à 14:15
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 :

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 !

A voir également:

2 réponses

sudoer Messages postés 113 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 11 juin 2011 14
10 mai 2011 à 13:44
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);
1
silentData Messages postés 183 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 18 octobre 2013 40
10 mai 2011 à 14:15
Je savais bien que j'avais oublié quelque chose !

Merci beaucoup !!
0