PDA

View Full Version : [c] lettura file


mto89
25-04-2010, 17:07
ciao, è da un pò che non uso il c e or ho un pò di ruggine :)
Esempio banale:
nel main ho:

FILE *fdata;
if ( fdata = fopen("prova.txt", "r") == NULL )
{
printf("Errore nell'apertura del file, nome o percorso incorretti");
return 1;
}

il problema è che anche se nella directoy del progetto (fatto in visual studio aggiungengo un *.c ad un empty project) ho un file di nome prova.txt mi ppare sempre la scritta nel printf...l'ho messo pure in C:\, cambiando persorso ma nulla! non capisco che cosa sia.

Se tolgo l'if, il debug si pianta con il seguente errore:

http://img90.imageshack.us/img90/9739/catturajp.jpg (http://img90.imageshack.us/i/catturajp.jpg/)

Uploaded with ImageShack.us (http://imageshack.us)

bobbytre
25-04-2010, 18:14
ciao, è da un pò che non uso il c e or ho un pò di ruggine :)
Esempio banale:
nel main ho:

FILE *fdata;
if ( fdata = fopen("prova.txt", "r") == NULL )
{
printf("Errore nell'apertura del file, nome o percorso incorretti");
return 1;
}

il problema è che anche se nella directoy del progetto (fatto in visual studio aggiungengo un *.c ad un empty project) ho un file di nome prova.txt mi ppare sempre la scritta nel printf...l'ho messo pure in C:\, cambiando persorso ma nulla! non capisco che cosa sia.

Se tolgo l'if, il debug si pianta con il seguente errore:

http://img90.imageshack.us/img90/9739/catturajp.jpg (http://img90.imageshack.us/i/catturajp.jpg/)

Uploaded with ImageShack.us (http://imageshack.us)

prova cosi:

FILE *fdata;
fdata = fopen("prova.txt", "r");

if ( fdata == NULL )
{
printf("Errore nell'apertura del file, nome o percorso incorretti");
return 1;
}

mto89
25-04-2010, 20:17
si in effetti pensavo a chissà che invece ho semplicemente posizionato male le parentesi nella condizione dell'if :) Grazie!