Pb avec: Segmentation Fault (Core Dumped)

Résolu/Fermé
tipex - 5 janv. 2010 à 03:28
 Peepsi - 12 nov. 2017 à 14:26
Bonjour,

J'étais en train de coder le plus normalement du monde et en introduisant un simple COUT dans une fonction pour connaître la valeur d'une variable, catastrophe.

La compilation se passe bien mais à l'execution, la fenêtre de Cygwin m'affiche un lapidaire: [B]Segmentation Fault (Core Dumped)[/B].

J'ai tout de retiré du code le COUT incriminé et rebelote, le même message apparait quelque soit les modifications apportées.

J'ai donc deux questions à vous poser:
1) Comment faire pour que ce message n'apparaisse plus.
2) Que signifie-t-il?

En vous remerciant.

2 réponses

Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 661
5 janv. 2010 à 03:42
Bonjour,

Segmentation fault : erreur mémoire.

Cela veut dire que tu essayes d'accéder à un espace mémoire qui n'est pas autorisé. Cela arrive notamment pour deux raisons d'habitude :
1) tu essayes d'accéder à un indice de tableau plus grand que la taille du tableau.
2) tu as un mauvais pointeur (un pointeur qui ne pointe pas sur un objet valide) et tu essayes d'utiliser une méthode ou accéder aux données de cet objet via le pointeur (ou simplement le déréférencer)

le fait que ton cout fasse apparaitre ce bug, c'est un très bon signe : cela veut dire que le truc que tu essayes d'afficher a un problème. Maintenant il faut que tu remontes ans ton code pour voir d'où viens l'erreur exactement (si c'est un pointeur, quelle est la dernière valeur qu'il a reçu ? s'il y a un tableau, est-ce que l'indice ne dépasse pas le maximum ?
33
Bonjour, Merci beaucoup ça fait un bon moment que je cherche à résoudre un problème similaire et vous êtes la 1er personne à donner une réponse expliquant la faute :) merci.
0