Previous Next Up Index Contents

11.5.2. Traitement par caractères

La manipulation de fichiers avec les instructions fprintf et fscanf n'est pas assez flexible pour manipuler de façon confortable des textes écrits. Il est alors avantageux de traiter le fichier séquentiellement caractère par caractère.

a) Ecrire un caractère dans un fichier séquentiel - fputc

fputc( <C> , <FP> );

fputc transfère le caractère indiqué par <C> dans le fichier référencé par <FP> et avance la position de la tête de lecture/écriture au caractère suivant.

* représente un caractère (valeur numérique de 0 à 255) ou le symbole de fin de fichier EOF (voir 11.5.3.).

* <FP> est un pointeur du type FILE* qui est relié au nom du fichier cible.

Remarque

L'instruction

fputc('a', stdout);

est identique à

putchar('a');

b) Lire un caractère dans un fichier séquentiel - fgetc


         <C> = fgetc( <FP> );
fgetc fournit comme résultat le prochain caractère du fichier référencé par <FP> et avance la position de la tête de lecture/écriture au caractère suivant. A la fin du fichier, fgets retourne EOF (voir 11.5.3.).

<C> représente une variable du type int qui peut accepter une valeur numérique de 0 à 255 ou le symbole de fin de fichier EOF.

<FP> est un pointeur du type FILE* qui est relié au nom du fichier à lire.

Remarque

L'instruction

C = fgetc(stdin);

est identique à

C = getchar();


Previous Next Up Index Contents

Feedback - Copyright © 1993,1996,1997 F.Faber