Developpez.com - C
X

Choisissez d'abord la catégorieensuite la rubrique :

next up previous contents index
Next: Lecture et écriture par Up: Les entrées-sorties Previous: Ouverture et fermeture de

Sous-sections

Lecture et écriture par caractère sur fichier

lecture par caractère : fgetc

 

Utilisation

fgetc (flot-de-données)

Sémantique des paramètres

-
flot-de-données est de type pointeur vers FILE. Il pointe vers le fichier à partir duquel se fait la lecture.

Description

La fonction fgetc lit un caractère du fichier flot-de-données.

Valeur rendue

Si la lecture se fait sans erreur et sans rencontre de la fin de fichier, fgetc rend le caractère lu. Si il y a erreur d'entrée-sortie, ou rencontre de fin de fichier, fgetc rend la valeur EOF.   Pour cette raison, le type de la valeur rendue est int et non pas char.

Utilisation typique

#include <stdio.h>
int c;
FILE *fi;

while ((c = fgetc(fi)) != EOF)
   {
   ...   /*   utilisation de c   */
   }

lecture par caractère : getc

  Il existe une fonction getc qui est rigoureusement identique à fgetc (même interface, même sémantique), sauf que getc est implémenté comme une macro et non comme une vraie fonction C. La différence est que getc peut évaluer plusieurs fois son paramètre flot-de-données, ce qui lui interdit d'être une expression contenant des effets de bord.
Exemple :
int i;
FILE * TAB_FILE[10];

c = getc(TAB_FILE[i++]);   /*   Arrgh..., effet de bord !   */

lecture par caractère : getchar

 

Utilisation

getchar ( )

Description

La fonction getchar est rigoureusement équivalente à getc(stdin). C'est également une macro, mais comme elle n'admet pas de paramètre, elle n'a pas le (petit) inconvénient de getc.

écriture par caractère : fputc

 

Utilisation

fputc (carac , flot-de-données)

Sémantique des paramètres

-
carac est de type int, c'est le caractère à écrire.
-
flot-de-données est de type pointeur vers FILE. Il pointe vers le fichier sur lequel se fait l'écriture.

Description

La fonction fputc écrit le caractère carac dans le fichier flot-de-données.

Valeur rendue

La fonction fputc rend le caractère écrit si l'écriture s'est faite sans erreur, ou EOF en cas d'erreur.  

Utilisation typique

#include <stdio.h>
int c;
FILE *fi,*fo;

/*   fi : résultat de fopen de fichier en lecture   */
/*   fo : résultat de fopen de fichier en écriture  */

while ((c = fgetc(fi)) != EOF)
   fputc(c,fo);

écriture par caractère : putc

  Il existe une fonction putc qui est rigoureusement identique à fputc (même interface, même sémantique), sauf que putc est implémenté comme une macro et non comme une vraie fonction C. La même remarque que celle faite au sujet de getc s'applique donc à putc.

écriture par caractère : putchar

 

Utilisation

putchar (carac)

Description

Un appel putchar(c) est rigoureusement identique à fputc(c,stdout).


next up previous contents index
Next: Lecture et écriture par Up: Les entrées-sorties Previous: Ouverture et fermeture de
Bernard Cassagne
1998-12-09
Contacter le responsable de la rubrique C