Partager via


fgets, fgetws

Obtiennent une chaîne à partir d’un flux.

Syntaxe

char *fgets(
   char *str,
   int numChars,
   FILE *stream
);
wchar_t *fgetws(
   wchar_t *str,
   int numChars,
   FILE *stream
);

Paramètres

str
Emplacement de stockage des données.

numChars
Nombre maximal de caractères à lire.

stream
Pointeur vers la structure FILE .

Valeur retournée

Chacune de ces fonctions retourne str. NULL est retourné pour indiquer une erreur ou une condition de fin de fichier. Utilisez feof ou ferror pour déterminer si une erreur s’est produite. Si str un stream pointeur null ou numChars est inférieur ou égal à zéro, cette fonction appelle le gestionnaire de paramètres non valide, comme décrit dans la validation des paramètres. Si l’exécution est autorisée à se poursuivre, errno a la valeur EINVAL et la fonction retourne NULL.

Pour plus d’informations sur les codes de retour, consultez , , _sys_errlist_doserrnoet _sys_nerr.errno

Notes

La fonction fgets lit une chaîne à partir de l’argument stream d’entrée et la stocke dans str. fgets lit les caractères de la position actuelle du flux vers et y compris le premier caractère de ligne, à la fin du flux, ou jusqu’à ce que le nombre de caractères lus soit égal à numChars - 1, selon le premier. Le résultat stocké dans str est assorti d’un caractère null. Le caractère de saut de ligne, s’il est lu, est inclus dans la chaîne.

fgetws est une version à caractères larges de fgets.

fgetws lit l’argument str de caractère large sous la forme d’une chaîne de caractères multioctets ou sous la forme d’une chaîne à caractères larges lorsqu’elle stream est ouverte en mode texte ou en mode binaire, respectivement. Pour plus d’informations sur l’utilisation de modes texte et binaire dans les E/S de flux Unicode et multioctets, consultez E/S de fichier de texte et de mode binaire et E/S de flux Unicode dans les modes texte et binaire.

Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.

Mappages de routines de texte générique

Routine TCHAR.H _UNICODE et _MBCS non définis _MBCS défini _UNICODE défini
_fgetts fgets fgets fgetws

Spécifications

Fonction En-tête requis
fgets <stdio.h>
fgetws <stdio.h> ou <wchar.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

Exemple

// crt_fgets.c
// This program uses fgets to display
// the first line from a file.

#include <stdio.h>

int main( void )
{
   FILE *stream;
   char line[100];

   if( fopen_s( &stream, "crt_fgets.txt", "r" ) == 0 )
   {
      if( fgets( line, 100, stream ) == NULL)
         printf( "fgets error\numChars" );
      else
         printf( "%s", line);
      fclose( stream );
   }
}

Entrée: crt_fgets.txt

Line one.
Line two.

Sortie

Line one.

Voir aussi

E/S de flux
fputs, fputws
gets, _getws
puts, _putws