Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1686 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [C] fread -> segmentation fault

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C] fread -> segmentation fault

n°552862
VB HELP
Posté le 28-10-2003 à 17:46:15  profilanswer
 

j'arrive pas a faire un fread :(
 

Code :
  1. void lecture_fichier( char path ) {
  2.   FILE * File;
  3.   char *message;
  4.  
  5.   File =  fopen(path,"r" ); 
  6.   message = (char*)malloc(1024);
  7.   fread(&message,1024,1,File);
  8.   printf("fread = %s\n",message);
  9.   free(message);
  10.   fclose(File);
  11. }


 
 
lorque j'execute ce bout de code au niveau du fread j'ai une erreure : segmentation fault :(

mood
Publicité
Posté le 28-10-2003 à 17:46:15  profilanswer
 

n°552865
VisualC++
J'va y penser ...
Posté le 28-10-2003 à 17:50:33  profilanswer
 

fread(message ...) et pas &message , ca attend un void* pas un void**

n°552867
Moktar1er
No one replies...
Posté le 28-10-2003 à 17:51:40  profilanswer
 

bah déjà pour commencer tu peux tester si ton fopen il a marché ou pas...
tu peux ensuite tester si ton malloc a marché ou pas
regarder le retour des fonctions des fois c'est super utile, sisi
pour ton erreur il y a des chances que ça vienne du fait que tu passes dans le fread l'adresse de l'adresse du buffer, plutôt que l'adresse tout court
 
edit: grilled  [:benou_grilled]


Message édité par Moktar1er le 28-10-2003 à 17:51:57
n°552868
VB HELP
Posté le 28-10-2003 à 17:52:28  profilanswer
 

j'ai essayé sans le &, mais j'ai tjrs la meme erreure :(

n°552872
Moktar1er
No one replies...
Posté le 28-10-2003 à 17:57:16  profilanswer
 

je vais me répéter... tu as contrôlé le retour de fopen et de malloc :??:

n°552874
VB HELP
Posté le 28-10-2003 à 17:57:24  profilanswer
 

j'ai testé le fopen avec ca et il marche :
 

Code :
  1. if(File == NULL)
  2.     {
  3.     printf("echouee !\n" );
  4.     exit(1);
  5.     }


 
par contre comment tester un malloc ?

n°552875
Moktar1er
No one replies...
Posté le 28-10-2003 à 17:58:33  profilanswer
 

bah pareil, tu regardes si ça retourne null ou pas

n°552877
Kristoph
Posté le 28-10-2003 à 17:59:36  profilanswer
 

VB HELP a écrit :

j'ai testé le fopen avec ca et il marche :
 

Code :
  1. if(File == NULL)
  2.     {
  3.     printf("echouee !\n" );
  4.     exit(1);
  5.     }


 
par contre comment tester un malloc ?


 
Pareil.

n°552881
Moktar1er
No one replies...
Posté le 28-10-2003 à 18:02:34  profilanswer
 

et euh ton path ... c'est pas plutôt un "char *"?

n°552883
antp
Super Administrateur
Champion des excuses bidons
Posté le 28-10-2003 à 18:04:59  profilanswer
 

Faudrait pas un 0 en fin de chaîne "message" ?


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
mood
Publicité
Posté le 28-10-2003 à 18:04:59  profilanswer
 

n°552884
VB HELP
Posté le 28-10-2003 à 18:05:49  profilanswer
 

j'ai rajouté un  
 
printf("path = %s\n",path);
 
avant le fopen et il semblerai que le pb vienne de la !

n°552885
VB HELP
Posté le 28-10-2003 à 18:08:11  profilanswer
 

moktar1er a écrit :

et euh ton path ... c'est pas plutôt un "char *"?


 
oui c'etait ca !!! merci bcp !!!
 :jap:  :jap:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [C] fread -> segmentation fault

 

Sujets relatifs
Signal Handler (segmentation fault)Erreur de segmentation :/
interet du read par rapport au fread bufferiséBuffer, fichier, read et fread
erreur de segmentation[C/C++] Comparaison de fichier: fread / fgetc
probleme pour lire dans un fichier avec freadseg fault occasionnel, disparait quand debug pas a pas
[C] seg fault : please help [file avec des listes] 
Plus de sujets relatifs à : [C] fread -> segmentation fault


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR