les entrées sorties sur fichiers
salut.je compte faire un programme qui aquis le nom d'un fichier et puis qu'il affiche son contenu,alors j'utilise la fonction "scanf" ou "cin" mais le probleme c'est les espaces blancs.alors j'ai du utiliser scanf mais caractere par caractere pour ne pas oublier les espaces blancs et puis ajouter le caractere '\0' a la fin pour que se soit une chaine voici le code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| #include<stdio.h>
#include<iostream.h>
void main()
{
first:
int c;
int i;
char t[100];
FILE *fi;
for(i=0;t[i-1]!='\n';i++)
{
scanf("%c",&t[i]);
}
t[i]='\0';
if((fi=fopen(t,"r"))==NULL)
{
printf("erreur ouverture fichier\n");
goto first;
}
while((c=fgetc(fi))!=EOF)
printf("%c",c);
goto first;
} |
mais le "fopen" rend la valeur NULL et le fichier ne s'ouvre pas. veuillez m'aider stp.
merci d'avance.