Nom de fichier en C

Fermé
£udo Messages postés 455 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 19 décembre 2006 - 5 avril 2005 à 20:35
Ravachol Messages postés 560 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005 - 6 avril 2005 à 08:48
salut, je vous explique.
L'utilisateur tape le nom du fichire qu'il veut créer genre " avril".
A partir de ça, je voudrais que le fichier avril.txt soit crée. Mais j'arrive pas. J'ai essayé comme ça mais ça passe pas.
void creer_fichier(FILE *f,char *n)
{
char choix;
//char nomfichier[LG];
//1char txt[LG];
system("cls");
printf("CREATION DU FICHIER \n\n");
printf("NOM DU FICHIER A CREER: ");

flushall();
gets(n);
flushall();


strcat("n",".txt");
printf("%s",&n);

f = fopen(n,"w");

Qqn peut m'aider plizz ?

Merci
(¯`·.¸¸.-> £udo <-.¸¸.·´¯)

1 réponse

Ravachol Messages postés 560 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005 120
6 avril 2005 à 08:33
Salut,
Essaye en modifiant ce qui est en gras.
void creer_fichier(FILE **f,char *n)
{
char choix;
//char nomfichier[LG];
//1char txt[LG];
system("cls");
printf("CREATION DU FICHIER \n\n");
printf("NOM DU FICHIER A CREER: ");

flushall();
gets(n);
flushall();


strcat(n,".txt");
printf("%s",n);

*f = fopen(n,"w");


Attention à ce que le pointeur n soit alloué avec assez d'espace...

A++
0
Ravachol Messages postés 560 Date d'inscription vendredi 5 mars 2004 Statut Membre Dernière intervention 30 octobre 2005 120
6 avril 2005 à 08:48
Petite précision, gets devrait être évité car il ne fait pas de vérification de débordement de buffer, lui préferer fgets.

A++
0