fputc
, fputwc
Écrit un caractère dans un flux.
Syntaxe
int fputc(
int c,
FILE *stream
);
wint_t fputwc(
wchar_t c,
FILE *stream
);
Paramètres
c
Caractère à écrire.
stream
Pointeur vers la structure FILE
.
Valeur retournée
Chacune de ces fonctions retourne le caractère écrit. Pour fputc
, une valeur de retour égale à EOF
indique une erreur. Pour fputwc
, une valeur de retour égale à WEOF
indique une erreur. Si stream
c’est NULL
le cas, ces fonctions appellent le gestionnaire de paramètres non valide, comme décrit dans la validation des paramètres. Si l’exécution est autorisée à continuer, elles retournent EOF
et définissent errno
sur EINVAL
.
Pour plus d’informations sur les codes de retour, consultez , , _sys_errlist
_doserrno
et _sys_nerr
.errno
Notes
Chacune de ces fonctions écrit le caractère c
unique dans un fichier à la position indiquée par l’indicateur de position de fichier associé, s’il est défini. Les fonctions avancent l’indicateur selon les besoins. Dans fputc
et fputwc
, le fichier est associé à stream
. Si le fichier ne peut pas prendre en charge les demandes de positionnement ou a été ouvert en mode Ajout, le caractère est ajouté à la fin du flux.
Les deux fonctions se comportent de la même façon si le flux est ouvert en mode ANSI. fputc
ne prend pas en charge la sortie vers un flux UNICODE pour l’instant.
Les versions avec le suffixe _nolock
sont identiques, à ceci près qu’elles ne sont pas protégées contre les interférences par d’autres threads. Pour plus d’informations, consultez_fputc_nolock
. _fputwc_nolock
Voici une série de notes spécifiques aux routines.
Routine | Notes |
---|---|
fputc |
Équivalente à putc , mais implémentée uniquement comme une fonction, plutôt que comme une fonction et une macro. |
fputwc |
Version à caractères larges de fputc . Écrit c sous la forme d’un caractère multioctet ou d’un caractère large lorsqu’il stream est ouvert en mode texte ou en mode binaire, respectivement. |
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 |
---|---|---|---|
_fputtc |
fputc |
fputc |
fputwc |
Spécifications
Fonction | En-tête requis |
---|---|
fputc |
<stdio.h> |
fputwc |
<stdio.h> ou <wchar.h> |
La console n’est pas prise en charge dans les applications de la plateforme Windows universelle (UWP). Les handles de flux standard associés à la console (stdin
, stdout
et stderr
) doivent être redirigés pour que les fonctions de runtime C puissent les utiliser dans des applications UWP. Pour plus d’informations sur la compatibilité, consultez Compatibility.
Exemple
// crt_fputc.c
// This program uses fputc
// to send a character array to stdout.
#include <stdio.h>
int main( void )
{
char strptr1[] = "This is a test of fputc!!\n";
char *p;
// Print line to stream using fputc.
p = strptr1;
while( (*p != '\0') && fputc( *(p++), stdout ) != EOF ) ;
}
This is a test of fputc!!