fputc
, fputwc
Schreibt ein Zeichen in einen Stream.
Syntax
int fputc(
int c,
FILE *stream
);
wint_t fputwc(
wchar_t c,
FILE *stream
);
Parameter
c
Zu schreibende Zeichen.
stream
Zeiger zur FILE
-Struktur.
Rückgabewert
Jede dieser Funktionen gibt das geschriebene Zeichen zurück. Bei fputc
gibt ein Rückgabewert von EOF
einen Fehler an. Bei fputwc
gibt ein Rückgabewert von WEOF
einen Fehler an. Wenn stream
ja NULL
, rufen diese Funktionen den ungültigen Parameterhandler auf, wie in der Parameterüberprüfung beschrieben. Wenn die weitere Ausführung zugelassen wird, wird EOF
zurückgegeben und errno
auf EINVAL
festgelegt.
Weitere Informationen zu Rückgabecodes finden Sie unter , , _doserrno
, _sys_errlist
und _sys_nerr
.errno
Hinweise
Jede dieser Funktionen schreibt das einzelne Zeichen c
in eine Datei an der Position, die durch den zugehörigen Dateipositionsindikator angegeben wird, sofern definiert. Die Funktionen stellen den Indikator entsprechend voran. In fputc
und fputwc
, die Datei ist zugeordnet stream
. Wenn die Datei keine Positionierungsanforderungen unterstützen kann oder im Anfügemodus geöffnet wurde, wird das Zeichen am Ende des Datenstroms angefügt.
Die zwei Funktionen verhalten sich identisch, wenn der Stream im ANSI-Modus geöffnet ist. fputc
unterstützt derzeit die Ausgabe in einen UNICODE-Stream nicht.
Die Versionen mit dem Suffix _nolock
sind identisch, allerdings sind sie nicht vor Störungen durch andere Threads geschützt. Weitere Informationen finden Sie unter_fputc_nolock
_fputwc_nolock
.
Es folgen routinespezifische Hinweise.
Routine | Hinweise |
---|---|
fputc |
Entspricht putc , wird jedoch anstelle einer Funktion und eines Makros nur als Funktion implementiert. |
fputwc |
Breitzeichenversion von fputc . c Schreibt als Multibyte-Zeichen oder als breites Zeichen, wenn stream es im Textmodus oder binärmodus geöffnet wird. |
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.
Mapping generischer Textroutinen
TCHAR.H-Routine | _UNICODE und _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_fputtc |
fputc |
fputc |
fputwc |
Anforderungen
Funktion | Erforderlicher Header |
---|---|
fputc |
<stdio.h> |
fputwc |
<stdio.h> oder <wchar.h> |
Die Konsole wird in UWP-Apps (Universelle Windows-Plattform) nicht unterstützt. Die mit der Konsole verknüpften Standardstreamhandles stdin
, stdout
und stderr
müssen umgeleitet werden, bevor sie von C-Runtimefunktionen in UWP-Apps verwendet werden können. Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
// 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!!