putchar
, putwchar
Schreibt ein Zeichen in stdout
.
Syntax
int putchar(
int c
);
wint_t putwchar(
wchar_t c
);
Parameter
c
Zu schreibende Zeichen.
Rückgabewert
Gibt das geschriebene Zeichen zurück. Um einen Fehler oder eine End-of-File-Bedingung anzugeben, putc
und zurückgeben ; putchar
und putwchar
zurückgeben putwc
EOF
WEOF
. Verwenden Oder feof
überprüfen Sie ferror
für alle vier Routinen einen Fehler oder ein Dateiende. Wenn ein NULL-Zeiger für stream
diese Funktionen übergeben wird, generieren diese Funktionen eine ungültige Parameter exception, wie in der Parameterüberprüfung beschrieben. Wenn die Ausführung fortgesetzt werden darf, geben sie zurück EOF
oder WEOF
, und legen sie auf errno
.EINVAL
Weitere Informationen zu Rückgabecodes finden Sie unter , , _doserrno
, _sys_errlist
und _sys_nerr
.errno
Hinweise
Die putc
-Routine schreibt das einzelne Zeichen c
in die aktuelle Position der stream
-Ausgabe. Jede beliebige ganze Zahl kann an putc
übergeben werden, aber es werden nur die unteren 8 Bits geschrieben. Die putchar
Routine ist identisch mit putc( c, stdout )
. Wenn ein Lesefehler auftritt, wird für jede Routine die Fehleranzeige für den Stream festgelegt. putc
und putchar
ähneln fputc
bzw_fputchar
. werden sowohl als Funktionen als auch als Makros implementiert (siehe Empfehlungen für die Auswahl zwischen Funktionen und Makros). putwc
und putwchar
sind jeweils Breitzeichenversionen von putc
und putchar
.
Die Versionen mit dem _nolock
Suffix sind identisch, mit der Ausnahme, dass sie nicht vor Störungen durch andere Threads geschützt sind. Sie können schneller sein, da sie keinen Aufwand für das Sperren anderer Threads verursachen. Verwenden Sie diese Funktionen nur in threadsichere Kontexten wie z. B. in Singlethreadanwendungen oder in Fällen, in denen der aufrufende Bereich die Threadisolation bereits handhabt.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Informationen zum Ändern dieses Verhaltens finden Sie im Global state in the CRT.
Generische Textroutinzuordnungen
TCHAR.H-Routine | _UNICODE und _MBCS nicht definiert |
_MBCS Definiert |
_UNICODE Definiert |
---|---|---|---|
_puttchar |
putchar |
putchar |
putwchar |
Anforderungen
Routine | Erforderlicher Header |
---|---|
putchar |
<stdio.h> |
putwchar |
<stdio.h> oder <wchar.h> |
Die Konsole wird in Universelle Windows-Plattform -Apps (UWP) nicht unterstützt. Die Standardstreamhandles, die der Konsole zugeordnet sind, stdin
stdout
und stderr
müssen umgeleitet werden, bevor C-Laufzeitfunktionen sie in UWP-Apps verwenden können. Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Bibliotheken
Alle Versionen der C-Laufzeitbibliotheken.
Beispiel
// crt_putchar.c
/* This program uses putc to write buffer
* to a stream. If an error occurs, the program
* stops before writing the entire buffer.
*/
#include <stdio.h>
int main( void )
{
FILE *stream;
char *p, buffer[] = "This is the line of output\n";
int ch;
ch = 0;
for( p = buffer; (ch != EOF) && (*p != '\0'); p++ )
ch = putchar( *p );
}
Ausgabe
This is the line of output
Siehe auch
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für