Salve a tutti, vorrei chiedervi come riuscire, essendo poco esperto, a superare questo piccolo problema. In pratica il mio programmino deve caricare un file, e prima di farlo voglio verificare che esso effettivamente esista.
Il codice che ho creato per far questo controllo è il seguente :
char *file = new char[100];
cout << "Inserire il path file da firmare: " ;
cin >> file;
cout << endl;
FILE *fp;
fp=fopen(file,"r");
do {
cout << "Errore apertura file! Inserire il path file corretto: ";
cin >> file;
cout << endl;
fp=fopen(file,"r");
} while ( fp==NULL);
ovviamente ha un piccolo difetto, cioè se al primo tentativo inserisco il path file corretto, il programma mi restituisce "Errore apertura file! Inserire il path file corretto" , mentre dal secondo tentativo in poi funziona perfettamente. In sostanza al primo tentativo qualsiasi path file inserisco avrò sempre errore. Cose devo cambiare nel codice per sistemarlo?