Flux rss
Collection CommentÇaMarche.net
Rechercher : dans
Par :

Segmentation fault

dali81, le vendredi 15 avril 2005 à 11:19:50 
 Signaler ce message aux modérateurs

Bonjour,

quand je change les paramètres de ma fonction main je recois "segmentation fault"

je pensais que c une erreur liée au dépassement de la capacité mémoire, maais le problème c que je n'ai fait que diminuer la grandeur des parametres!!!

1

kij_82, le vendredi 15 avril 2005 à 11:57:07

Donne les parties concernée de ton code pour voir,

++ ~ iclic @ gauch,iclic,  iclic @ droate, iclic, iclic
             et ya pas de bôg môsieu !    ~

Répondre à kij_82

2

dali81, le vendredi 15 avril 2005 à 12:05:36

Ouf!! ça sera dur pour que tu le comprennes c trop long et en plus la variable est utilisé dans plusieurs fonctions et je sais pas exact à quel niveau se trouve l'erreur. on vient de me dire de faire un débogage pour voir exact l'emplacement de l'erreur; mais pas de résultat y a une fenetre qui me dit "segmantation fault"

Répondre à dali81

3

dali81, le vendredi 15 avril 2005 à 13:05:00

Ouf!! ça sera dur pour que tu le comprennes c trop long et en plus la variable est utilisé dans plusieurs fonctions et je sais pas exact à quel niveau se trouve l'erreur. on vient de me dire de faire un débogage pour voir exact l'emplacement de l'erreur; mais pas de résultat y a une fenetre qui me dit "segmantation fault"

Répondre à dali81

4

pom, le vendredi 15 avril 2005 à 13:14:37

Enfin si tu n'affiches pas ton code (ou une partie) on ne pourra rien faire.
Affiche les valeurs une par une, fonction par fonction.

As-tu vérifié toutes tes fonctions ? As-tu fait un jeu de test qui prend en compte tous les cas ?

Un segmentation fault peut aussi provenir d'une erreur de pointeur...

Bonne chance !

Répondre à pom

5

dali81, le vendredi 15 avril 2005 à 13:23:11

Comment faire un jeu de test??

Répondre à dali81

6

kij_82, le vendredi 15 avril 2005 à 13:33:57
  • +1

Un jeu de test, c'est à dire faire tourner ton ancienne version du prog avec différents paramètres pour voir les éventuels dépassement de mémoire, les fautes de pointeurs, ...
Ou alors, fait une trace de ton programme tout simplement, en commencant au début, compme ca tu pourra cerner déjà mieux ton erreur

++ ~ iclic @ gauch,iclic,  iclic @ droate, iclic, iclic
             et ya pas de bôg môsieu !    ~

Répondre à kij_82

7

 pom, le vendredi 15 avril 2005 à 13:35:06
  • +1

Je vais te donner un exemple :

tu fais une fonction qui calcule l'aire d'un triangle

double aire(double B,double h) { return B*h/2;}

Afin de savoir si ta fonction est bien codée, tu essayes pour des valeurs de B e h et tu regardes la valeur renvoyée par ta fonction.

aire(1,1); aire(1,3);
aire(-1,5) -> mauvais, tu obtiens une valeur négative

Donc il faut que tu corriges :

double aire(double B,double h)
{
assert(B>0. && h>0.);
return B*h/2;
}

Plus compliqué : si ta fonctin contient des if...then...else, il faut que tu testes tous les cas.

Un segmentation fault provient très généralement d'un pointeur...

Répondre à pom
[Wine / Ubuntu 64 bit] Segmentation fault (Résolu) Bonjour, Voilà je suis sur ce problème depuis quelques jours sans arriver à le résoudre, j'ai donc décidé aujourd'hui de venir poster en désespoir de cause. Voilà, je conçois des sites webs et comme tout concepteur qui se respecte je dois concevoir un... www.commentcamarche.net/forum/affich-3572736-wine-ubuntu-64-bit-segmentation-fault
Asterisk segmentation fault (Résolu) Bonjour, je travaille avec Asterisk depuis pres de 6 mois et tout fonctionnait tres bien. hier, j'ai tenté de lancer le daemon, et l'erreur suivante est apparue : segmentation fault. Avez-vous une solution ou dois-je effacer puis reinstaller asterisk... www.commentcamarche.net/forum/affich-1799182-asterisk-segmentation-fault
[C] Segmentation fault lecture fichier (Résolu) Bonjour à tous, je devrais ouvrir un fichier et s'il commence par "drawing" récuperer tous les champs qui suivent; mais pour le moment j'ai un "segmentation fault" si quelqu'un pouvait m'aider : int main(int argc, char *argv[]) { int i; const int... www.commentcamarche.net/forum/affich-2815783-c-segmentation-fault-lecture-fichier
[Langage C] C/C++ Erreur de segmentationQu'est ce qu'une erreur de segmentation Vous êtes en train de développer une application sous Linux en C/C++. Tout va bien, ça compile, les oiseaux chantent. Donc vous lancez votre application pour la tester. Et vous obtenez l'un de ces deux... www.commentcamarche.net/faq/sujet-4791-langage-c-c-c-erreur-de-segmentation
[c] SDL segmentation faultBonjour, je fais u test avec la sdl, et la console me dit segmentation fault (core dumped). Voila mon code : #include #include #include int main(int argc, char *argv[]) { SDL_Surface *ecran = NULL, *zozor = NULL;... www.commentcamarche.net/forum/affich-9715356-c-sdl-segmentation-fault
Segmentation fault LinuxBonjour, J'ai compilé un petit programme "debug.pc" de test sous linux et j'ai eu une erreur de Segmentation fault a l execution ( pas d erreurs a la compile ). Ce meme programme s execute sous HPUX sans problemes. Remarque : Lorsque je declare les... www.commentcamarche.net/forum/affich-1096900-segmentation-fault-linux
[langage C] segmentation faultBonjour ! Je sais que ce sujet a déjà été abordé dans des messages précédents, mais malgré ça j'arrive toujours à une erreur. Mon programme est simplement la définition de strcpy : char my_strcpy(char *s1, const char *s2) { s1 = (char *) malloc... www.commentcamarche.net/forum/affich-2387302-langage-c-segmentation-fault
Allied Telesyn Ethernet Switch 16x100FX/ST + 2xUpLink L2 Switch (AT-8016F/ST)x 100 16 x 100FX 100FX, Type:Switch, Administrable, Divers:16 port 100FX, Indicateurs de statut:Port Status, Collision, Duplex / Half Duplex, Power, Fault, Master, RPS, FWR LED's, Modes de communication:Half/Full-Duplex, Nb. de ports RJ-45 10/100... www.commentcamarche.net/guide/637471-allied-telesyn-ethernet-switch-16x100fx-st-2xuplink-l2-switch-at-8016f-st
Segmentation de la mémoire en assembleurQu'est-ce que la segmentation de la mémoire ? En assembleur, on appelle segment de mémoire le mécanisme de base de la gestion des adresses pour des processeurs de type 80x86. Les instructions sont stockées dans le registre IP. Il s'agit d'adresses... www.commentcamarche.net/contents/asm/segmentation.php3
Equipements réseau - Le pont (bridge)Pont (bridge) Un pont est un dispositif matériel permettant de relier des réseaux travaillant avec le même protocole. Ainsi, contrairement au répéteur, qui travaille au niveau physique, le pont travaille également au niveau logique (au niveau de... www.commentcamarche.net/contents/lan/ponts.php3