Erreur segmentation fault (core dumped)

Nicekloe Messages postés 79 Date d'inscription   Statut Membre Dernière intervention   -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   - 4 avril 2018 à 19:30
Bonjour à tous
Je vous remercie d'avance pour votre assistance. Je travail sur un tp en C. Le tp consiste en la création de fichier contenant des valeurs aléatoires générées automatiquement, ensuite écrire une fonction de tri et pour finir remplir un tableau avec les valeurs aléatoires générées venant du fichier et appliquer l'algorithme de tri sur le tableau. l'objectif du tp est de pouvoir calculer la complexité de l'algorithme de tri.
Cependant, je bloc à un niveau. J'ai un fichier qui génère 10 valeurs aléatoires. J'ouvre donc le fichier et j'essaie d'afficher les valeurs pour voir si ça fonctionne. Ci-dessous le code :

p_fichier = fopen("fic10" , "r");
int y=0;

while(!feof(p_fichier))
{
int *x;
fscanf(p_fichier, "%d\n", x);
printf("%d\n", *x);
}
fclose(p_fichier);


Lorsque j'exécute le programme, j'ai le message "segmentation fault(core dumped)" qui s'affiche à l'écran.
J'ai fait des recherches dessus, mais rien n'y fait. J'espère sincèrement que vous pourriez me venir en aide.

PS : j'utilise Linux et l'éditeur gEdit pour écrire mon programme.

1 réponse

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonsoir, il me semble que tu déclares x comme un pointeur, mais que tu ne précises pas vers quoi il pointe.
je suggère plutôt de déclarer x comme un entier, et, bien sur, d'en adapter l'utilisation.
ou bien de faire pointer x vers y, qui semble ne servir à rien.
1