fgets, fgetws

 

Pour obtenir la dernière documentation sur Visual Studio 2017, consultez Documentation Visual Studio 2017.

Obtenir une chaîne à partir d’un flux de données.

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

Paramètres

str
Emplacement de stockage des données.

n
Nombre maximal de caractères à lire.

stream
Pointeur vers la structure FILE .

Chacune de ces fonctions retourne str. NULLest 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 ou stream est un pointeur null, ou n est inférieur ou égal à zéro, cette fonction appelle le Gestionnaire de paramètre non valide, comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre, errno a la valeur EINVAL et la fonction retourne une valeur NULL.

Consultez la page _doserrno, errno, _sys_errlist et _sys_nerr pour plus d’informations sur les autres codes d’erreur.

Le fgets fonction lit une chaîne à partir de l’entrée stream argument et le stocke dans str. fgetslit les caractères à partir de la position actuelle du flux, y compris le premier caractère de saut de ligne, à la fin du flux, ou jusqu'à ce que le nombre de caractères lus est égal à n – 1, selon ce qui se produit en premier. Le résultat est stocké dans str est assorti d’un caractère null. Le saut de ligne de caractères, si lecture, est inclus dans la chaîne.

fgetwsest une version à caractère élargi de fgets.

fgetwslit l’argument larges str comme une chaîne de caractères multioctets ou une chaîne à caractères larges se stream est ouvert en mode texte ou binaire, respectivement. Pour plus d’informations sur l’utilisation des modes texte et binaire dans Unicode et multioctets flux e/S, consultez e/s de fichier en Mode binaire et de texte et e/s de flux Unicode en Modes texte et binaire.

Mappages de routines de texte générique

Routine TCHAR.H_UNICODE et _MBCS non définis_MBCS défini_UNICODE défini
_fgettsfgetsfgetsfgetws
FonctionEn-tête requis
fgets<stdio.h>
fgetws<stdio.h> ou <wchar.h>

Pour plus d'informations sur la compatibilité, voir Compatibilité dans l'introduction.

// crt_fgets.c  
// This program uses fgets to display  
// a line from a file on the screen.  
//  
  
#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\n" );  
      else  
         printf( "%s", line);  
      fclose( stream );  
   }  
}  

Line one.  
Line two.  

Sortie

Line one.  

Flux d’e/s
fputs, fputws
Obtient, _getws
place, _putws

Afficher: