Bonjour,
J'ai un problème lors du passage de mon pointeur en paramètre d'une fonction, et plus particulièrement quand je modifie la valeur dans mon pointeur. Voici mon code:
int traitementFichierDesConnections(char * cheminFichierFil, typeTableauConnection tableauConnections, typeTabManuel tabManuel, typeTableauPConnection tableauPConnections, int *pnb_exceptions);
[...]
void TraitementBoutonGen(GtkWidget* pWidget, gchar* cheminFichierFil, gchar* cheminFichierPro, Continuite continuite, Isolement isolement)
{
[...]
int *pnb_exceptions;
//*pnb_exceptions = 0; ligne que je suis obligé de mettre en commentaire
nb_connections = traitementFichierDesConnections(cheminFichierFil, tableauConnections, tabManuel, tableauPConnection, pnb_exceptions);
aux = *pnb_exceptions;
printf("%d", aux);
[...]
}
int traitementFichierDesConnections (char * cheminFichierFil, typeTableauConnection tableauConnections, typeTabManuel tabManuel, typeTableauPConnection tableauPConnection, int *pnb_exceptions)
{
[... et dans une boucle que j'ai testée et qui fonctionne bien]
//(*pnb_exceptions)++; que je suis obligé de mettre en commentaire
}
Tout se passe bien à la compilation, mais à l'exécution, il me dis que le programme a cessé de fonctionné, dès que je déclanche ce code, si je ne les met pas en commentaire.
Quelqu'un saurait-il d'où vien ce problème?
encore une fois, tu en dis trop peu !
Les erreurs d'exécutions viennent en général en C/C++ de pointeurs non initialisés, comme tu ne mets pas tes initialisations ici, impossible de savoir d'où vient l'erreur.
Re bonjour et encore merci =)
Justement, le problème viens sûrement de là, car je t'ai tout mis et je n'ai pas initialisé mes pointeurs. (je ne suis pas très habitué à les utiliser pour tout te dire)
En fait, non, je ne t'ai pas vraiment tout dis: quand je met int *pnb_exceptions;
Le programme passe tout de même dans ma boucle, me retourne bien la valeur souhaitée et plante à la fin de l'exécution du sous programme.
Quand j'essaye par contre de mettre int *pnb_exceptions = NULL;
Le programme plante directement avant même de passer dans ma boucle.
Enfin tu parlais bien des initialisations du pointeur??? ^^"