Segm. Fault juste après un appel de fonction. Devoir noté.

Segm. Fault juste après un appel de fonction. Devoir noté.

by Nicolas Vial -
Number of replies: 2

Bonjour, j'ai essayé de run mon programme mais une segmentation fault apparait dans le main au moment de l'appel à la fonction load_database. "int success = load_database(db, input_filename);". J'ai essayé de mettre des printf pour savoir de quel endroit ça venait et le printf juste avant l'appel s'affiche mais le printf placé à la 1ère ligne de la fonction load_database n'apparait pas. Je ne comprends pas vraiment ce qu'il se passe auriez-vous une idée? J'ai un peu cherché de mon côté et ça parle beaucoup de possible stack overflow mais je ne vois pas exactement pourquoi ni comment régler cette faute.

In reply to Nicolas Vial

Re: Segm. Fault juste après un appel de fonction. Devoir noté.

by Merlin Eléazar Nimier-David -

Pour être sûr que les printf s'affichent dans l'ordre des instructions, est-ce qu'ils finissent tous bien par `\n` ? Sinon ils pourraient rester dans le buffer et ne jamais être affichés lorsqu'il y a  un crash.

Une fonction `load_database` ne contenant qu'un printf ne devrait vraiment pas causer de segfault.

In reply to Merlin Eléazar Nimier-David

Re: Segm. Fault juste après un appel de fonction. Devoir noté.

by Nicolas Vial -
C'était en effet mon erreur. Le soucis vient donc de l'intérieur de load_database ce qui me rassure. Merci beaucoup et bonne soirée.