fgetc, fgetwc

 

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

Lire un caractère dans un flux.

int fgetc(   
   FILE *stream   
);  
wint_t fgetwc(   
   FILE *stream   
);  

Paramètres

stream
Pointeur vers la structure FILE .

fgetcRetourne le caractère lu comme un int ou EOF pour indiquer une erreur ou la fin du fichier. fgetwcRetourne, comme un wint_t, le caractère large qui correspond au caractère lu ou retourne WEOF pour indiquer une erreur ou la fin du fichier. Pour les deux fonctions, utilisez feof ou ferror pour faire la distinction entre une erreur et une condition de fin de fichier. Si une erreur de lecture se produit, l’indicateur d’erreur pour le flux est définie. Si stream est NULL, fgetc et fgetwc appellent le Gestionnaire de paramètre non valide, comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre, ces fonctions attribuent à errno la valeur EINVAL et retournent EOF.

Chacune de ces fonctions lit un caractère unique à partir de la position actuelle du fichier associé à stream. La fonction puis incrémente le pointeur de fichier associé (si défini) pour pointer vers le caractère suivant. Si le flux est à la fin du fichier, l’indicateur de fin de fichier pour le flux est définie.

fgetcest équivalent à getc, mais est implémenté uniquement comme une fonction, plutôt que comme une fonction et une macro.

fgetwcest la version à caractères larges de fgetc; il lit c comme un caractère multioctet ou larges se stream est ouvert en mode texte ou binaire.

Les versions avec le _nolock suffixe sont identiques, sauf qu’ils ne sont pas protégés contre toute interférence par d’autres threads.

Pour plus d’informations sur le traitement des caractères larges et à caractères multioctets en modes texte et binaire, consultez 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
_fgettcfgetcfgetcfgetwc
FonctionEn-tête requis
fgetc<stdio.h>
fgetwc<stdio.h> ou <wchar.h>

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

// crt_fgetc.c  
// This program uses getc to read the first  
// 80 input characters (or until the end of input)  
// and place them into a string named buffer.  
  
#include <stdio.h>  
#include <stdlib.h>  
  
int main( void )  
{  
   FILE *stream;  
   char buffer[81];  
   int  i, ch;  
  
   // Open file to read line from:  
   fopen_s( &stream, "crt_fgetc.txt", "r" );  
   if( stream == NULL )  
      exit( 0 );  
  
   // Read in first 80 characters and place them in "buffer":   
   ch = fgetc( stream );  
   for( i=0; (i < 80 ) && ( feof( stream ) == 0 ); i++ )  
   {  
      buffer[i] = (char)ch;  
      ch = fgetc( stream );  
   }  
  
   // Add null to end string   
   buffer[i] = '\0';  
   printf( "%s\n", buffer );  
   fclose( stream );  
}  

Line one.  
Line two.  

Sortie

Line one.  
Line two.  

Flux d’e/s
fputc, fputwc
getc, getwc

Afficher: