programmino in C
Maurizio Paolini
paolini a dmf.unicatt.it
Lun 4 Nov 2002 15:13:18 UTC
> From: marco <supermac2 a inwind.it>
>
> Ciao ragazzi...
> perche' questo programmino viene compilato senza errori (con l'istruzione gcc
> prova.c -o prova) , ma quando lo eseguo mi dice "Segmentation fault(core
> dumped)"???Che succede?Il problema e'nella riga di fgets...
Ti sei semplicemente dimenticato di allocare il buffer per la stringa:
buffer=(char *) malloc ((BUFSIZ+1)*sizeof(char));
Il "+1" ce lo metto perche' al momento non ricordo esattamente il
comportamento di fgets riguardo allo '0' di terminazione stringa.
mp
>
> #include <stdio.h>
>
> int main () {
> FILE * pFile;
>
> char * buffer;
>
> pFile = fopen ( "/etc/tesi.conf" , "rb" );
> if (pFile==NULL) exit (1);
>
> while (fgets(buffer,BUFSIZ,pFile))
> {
> printf("\n%s\n",buffer);
> }
> fclose (pFile);
>
> return 0;
> }
>
Maggiori informazioni sulla lista
Lug
|