Les fichiers avec : man comme google est ton ami !
fopen , fclose , fprintf , fscanf , fputc , fgetc , fgets , fread , fwrite, fputc , fputs.
Le plus simple est de tester , voila un code qui va fabriquer un fichier dans lequel on glisse le mot Bonjour
#include <stdio.h>
#include <stdlib.h>
int main (int argc, char **argv)
{
FILE * fichier;
fichier = fopen("fichier.txt","w");
if (fichier == NULL )
{
printf( " Erreur a l'ouverture ! \n");
return EXIT_FAILURE;
}
fprintf(fichier,"Bonjour \n");
fclose (fichier);
return EXIT_SUCCESS;
}
Et voila le code de son réciproque
#include <stdio.h>
#include <stdlib.h>
int main (int argc, char **argv)
{
FILE * fichier;
char carac;
fichier = fopen("fichier.txt","r");
if (fichier == NULL )
{
printf( " Erreur a l'ouverture ! \n");
return EXIT_FAILURE;
}
carac = fgetc (fichier);
printf ("%c\n",(char)carac);
fclose (fichier);
return EXIT_SUCCESS;
Ici carac récupère le premier caractère du fichier , dans notre cas le 'B' de Bonjour
on cast carac pour que le printf reçoive bien comme attendu un char (8bits) mais effectivement fgetc renvoi un entier
qui peut etre positif et negatif .. si il fait -1 c'est qu'aucun caractère n'as été lu .
EOF est défini a -1 (dans stdio.h )
extrait de stdio.h
/* End of file character.
Some things throughout the library rely on this being -1. */
#ifndef EOF
# define EOF (-1)
#endif
EOF : End o FILE
Ecrire un programme qui lit tous les caractères jusqu’à EOF