_fgetchar, _fgetwchar
Lit un caractère dans stdin.
int _fgetchar( void );
wint_t _fgetwchar( void );
Valeur de retour
_fgetchar retourne le caractère lu comme un int ou retourneEOF pour indiquer une erreur ou une fin de fichier. **_**fgetwchar retourne, en tant que wint_t, le caractère élargi correspondant au caractère lu ou retourne WEOF pour indiquer une erreur ou fin de fichier. Pour les deux fonctions, utilisez feof ou ferror pour différencier une erreur et une fin de fichier.
Notes
Ces fonctions lisent un caractère unique de stdin. Cette fonction incrémente ensuite le pointeur de fichier associé (si défini) pour pointer au caractère suivant. Si le flux est à la fin du fichier, l'indicateur de fin du flux est défini.
_fgetchar équivaut à fgetc( stdin ). Elle est aussi équivalente à getchar, mais implémenté uniquement comme une fonction plutôt que comme une fonction et une macro. _fgetwchar est la version à caractère élargi de _fgetchar.
Ces fonctions ne sont pas compatibles avec la norme ANSI.
Mappages de routines de texte générique
Routine Tchar.h |
_UNICODE et _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_fgettchar |
_fgetchar |
_fgetchar |
_fgetwchar |
Configuration requise
Fonction |
En-tête requis |
---|---|
_fgetchar |
<stdio.h> |
_fgetwchar |
<stdio.h> ou <wchar.h> |
La console n'est pas prise en charge dans les applications Windows Store . Les handles de flux standard associés à la console, stdin, stdout et stderr doivent être redirigés pour que les fonctions runtime C puissent les utiliser dans les applications Windows Store . Pour plus d'informations sur la compatibilité, consultez Compatibilité.
Exemple
// crt_fgetchar.c
// This program uses _fgetchar 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 )
{
char buffer[81];
int i, ch;
// Read in first 80 characters and place them in "buffer":
ch = _fgetchar();
for( i=0; (i < 80 ) && ( feof( stdin ) == 0 ); i++ )
{
buffer[i] = (char)ch;
ch = _fgetchar();
}
// Add null to end string
buffer[i] = '\0';
printf( "%s\n", buffer );
}