Loading

NOM

       stdio - Bibliothèque standard de fonctions d’entrées-sorties.

SYNOPSIS

       #include <stdio.h>

       FILE *stdin;
       FILE *stdout;
       FILE *stderr;

       Cette  bibliothèque  standard  fournit une interface simple et efficace
       pour les entrées-sorties avec tampons. Les entrées et les sorties  sont
       projetées  dans  des  flux de données logiques, et les caractéristiques
       des entrées-sorties physiques  sont  masquées.  Les  fonctions  et  les
       macros   sont   présentées   rapidement  ci-dessous.  Des  informations
       supplémentaires  sont  disponibles   dans   leurs   pages   de   manuel
       individuelles.

       Un  flux  est  associé  avec un fichier externe (qui peut aussi être un
       dispositif physique) en ouvrant un  fichier  (ceci  peut  impliquer  la
       création  d’un nouveau fichier). La création d’un fichier déjà existant
       efface son contenu précédent. Si un fichier supporte  les  demandes  de
       positionnement  (par  exemple un fichier sur disque, contrairement à un
       terminal), alors lindicateur de position du fichier  associé  au  flux
       est placé au début du fichier (octet zéro), à moins que le fichier soit
       ouvert en mode d’ajout. Si le mode d’ajout est utilisé, l’indicateur de
       position  est  placé  à la fin du fichier. L’indicateur de position est
       mis à jour après chaque lecture, écriture, ou repositionnement.  Toutes
       les  entrées  se  déroulent comme si les caractères étaient lus par des
       appels successifs à la fonction fgetc(3). Toutes les sorties  ont  lieu
       comme  si  les  caractères étaient envoyés à des appels successifs à la
       fonction fputc(3).

       Un fichier est dissocié d’un flux en fermant le fichier.  Les  flux  de
       sortie  sont  vidés (flush) avant que le flux soit dissocié du fichier.
       Ceci signifie  que  le  contenu  des  tampons  pas  encore  écrits  est
       transféré  dans  l’environnement de l’hôte. La valeur d’un pointeur sur
       un objet FILE (fichier) est indéfinie après la fermeture d’un  fichier.

       Un fichier peut être réouvert plus tard par le même programme ou par un
       autre, et son contenu relu ou modifié (si l’on peut placer l’indicateur
       de positionnement au début). Si la fonction main() se termine, ou si la
       fonction exit(3) est invoquée, tous les fichiers sont fermés (tous  les
       tampons  de  sortie  sont  transférés  par  fflush)  avant  la  fin  du
       programme. Les autres  méthodes  d’abandon  du  programme,  telles  que
       abort(3) ne s’occupent pas de fermer proprement les fichiers.

       Au démarrage du programme, trois flux de texte sont prédéfinis et n’ont
       pas besoin d’être ouverts explicitement : lentre  standard  (pour  la
       lecture des données), la sortie standard (pour l’écriture des données),
       et le flux derreur standard (pour les messages de  diagnostique).  Ces
       flux  sont  nommés  stdin,stdout  et  stderr.  À  l’ouverture,  le flux
       d’erreur n’a pas de tampon, l’entrée standard et la sortie standard ont
       des  tampons  complets  si  et seulement si ils ne se réfèrent pas à un
       périphérique interactif.

       Les flux de sortie qui s’adressent à un périphérique terminal disposent
       toujours d’un tampon de ligne par défaut. Les caractères sont conservés
       dans le tampon jusqu’à un saut de ligne, ou jusqu’à ce  qu’une  lecture
       soit  demandée  sur  un  flux  associé  au  même terminal. Il peut être
       nécessaire de déclencher intentionnellement l’écriture effective sur le
       terminal en invoquant fflush(3).

       La  bibliothèque  standard stdio fait partie de la bibliothèque libc et
       ses routines sont chargées automatiquement par les  compilateurs  cc(1)
       et  pc(1)  si  besoin  est.  Les  sections SYNOPSIS des pages de manuel
       mentionnées plus bas  indiquent  les  fichiers  d’en-tête  nécessaires,
       l’allure  des  déclarations  de  fonctions,  et  les variables externes
       utiles.

       Les noms ci-dessous correspondent à des macros.  On  ne  peut  pas  les
       réutiliser  sans  supprimer  leur  définition  précédente  avec #undef:
       BUFSIZ, EOF, FILENAME_MAX, FOPEN_MAX, L_cuserid,  L_ctermid,  L_tmpnam,
       NULL,  SEEK_END,  SEEK_SET,  SEEK_CUR, TMP_MAX, clearerr, feof, ferror,
       fileno, getc, getchar, putc, putchar, stderr, stdin, stdout. Il  existe
       des  définitions  sous  forme  de  fonctions  des  macros feof, ferror,
       clearerr, fileno, getc, getchar, putc, et putchar qui seront  utilisées
       si la définition de la macro est explicitement supprimée.

   Liste des fonctions
       Fonction      Description
       --------------------------------------------------------------------------
       clearerr      vérifie et réinitialise l’état d’un flux.
       fclose        ferme un flux.
       fdopen        fonction d’ouverture d’un flux.
       feof          vérifie et réinitialise l’état d’un flux.
       ferror        vérifie et réinitialise l’état d’un flux.
       fflush        transfère les tampons d’un flux.
       fgetc         lit le caractère ou le mot suivant depuis un flux d’entrée.
       fgetpos       repositionner un flux.
       fgets         lit une ligne depuis un flux d’entrée.
       fileno        renvoie le descripteur (de type entier) de l’argument flux.
       fopen         fonction d’ouverture d’un flux.
       fprintf       écriture de données formatées.
       fpurge        transfère les tampons d’un flux.
       fputc         écriture d’un caractère ou d’un mot dans un flux.
       fputs         écriture d’une ligne dans un flux.
       fread         entrées-sorties binaires.
       freopen       fonction d’ouverture d’un flux.
       fscanf        lecture de données formatées.
       fseek         repositionner un flux.
       fsetpos       repositionner un flux.
       ftell         repositionner un flux.
       fwrite        entrées-sorties binaires.
       getc          lit le caractère ou le mot suivant depuis un flux d’entrée.
       getchar       lit le caractère ou le mot suivant depuis un flux d’entrée.
       gets          lit une ligne depuis un flux d’entrée.
       getw          lit le caractère ou le mot suivant depuis un flux d’entrée.
       mktemp        créer un fichier temporaire (unique).
       perror        messages d’erreur système.
       printf        écriture de données formatées.
       putc          écriture d’un caractère ou d’un mot dans un flux.
       putchar       écriture d’un caractère ou d’un mot dans un flux.
       puts          écriture d’une ligne dans un flux.
       putw          écriture d’un caractère ou d’un mot dans un flux.
       remove        supprimer une entrée de répertoire.
       rewind        repositionner un flux.
       scanf         lecture de données formatées.
       setbuf        opérations sur les tampons.
       setbuffer     opérations sur les tampons.
       setlinebuf    opérations sur les tampons.
       setvbuf       opérations sur les tampons.
       sprintf       écriture de données formatées.
       sscanf        lecture de données formatées.
       strerror      messages d’erreur système.
       sys_errlist   messages d’erreur système.

       sys_nerr      messages d’erreur système.
       tempnam       créer un fichier temporaire.
       tmpfile       créer un fichier temporaire.
       tmpnam        créer un fichier temporaire.
       ungetc        remettre un caractère dans un flux d’entrée.
       vfprintf      écriture de données formatées.
       vfscanf       lecture de données formatées.
       vprintf       écriture de données formatées.
       vscanf        lecture de données formatées.
       vsprintf      écriture de données formatées.
       vsscanf       lecture de données formatées.

CONFORMITÉ

       La bibliothèque stdio est conforme à C89.

VOIR AUSSI

       close(2), open(2), read(2), write(2), stdout(3), unlocked_stdio(3)

COLOPHON

       Cette  page  fait  partie  de  la  publication 3.23 du projet man-pages
       Linux. Une description du projet et des instructions pour signaler  des
       anomalies       peuvent       être       trouvées      à      l’adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Cette page de manuel a été traduite  et  mise  à  jour  par  Christophe
       Blaess  <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
       Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et  mise  à
       disposition sur http://manpagesfr.free.fr/.

       Les mises à jour et corrections de la version présente dans Debian sont
       directement         gérées         par         Nicolas         François
       <nicolas.francois@centraliens.net>    et    l’équipe   francophone   de
       traduction de Debian.

       Veuillez  signaler  toute  erreur   de   traduction   en   écrivant   à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous pouvez toujours avoir accès à la version anglaise de  ce  document
       en utilisant la commande « man -L C <section> <page_de_man> ».

                               26 décembre 2001