Freigeben über


getchar, getwchar

Liest ein Zeichen aus der Standardeingabe.

Syntax

int getchar();
wint_t getwchar();

Rückgabewert

Gibt das gelesene Zeichen zurück. Diese Funktionen warten auf Eingaben und geben erst zurück, wenn die Eingabe verfügbar ist.

Zum Anzeigen eines Lesefehlers oder einer Dateiendebedingung gibt getcharEOF zurück, und getwchar gibt WEOF zurück. Verwenden Sie für getcharferror oder feof zur Fehler- oder Dateiendeüberprüfung.

Hinweise

Jede Routine liest ein einzelnes Zeichen aus stdin und erhöht den zugeordneten Dateizeiger, um auf das nächste Zeichen zu zeigen. getchar ist identisch mit _fgetchar, aber es wird als Funktion und als Makro implementiert.

Diese Funktionen sperren auch den aufrufenden Thread und sind threadsicher. Eine nicht sperrende Version finden Sie unter _getchar_nolock, _getwchar_nolock.

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
_gettchar getchar getchar getwchar

Anforderungen

Routine Erforderlicher Header
getchar <stdio.h>
getwchar <stdio.h> oder <wchar.h>

Die Konsole wird in Universelle Windows-Plattform -Apps (UWP) nicht unterstützt. Die Standardstreamhandles, die der Konsole zugeordnet sind, stdinstdoutund stderrmüssen umgeleitet werden, bevor C-Laufzeitfunktionen sie in UWP-Apps verwenden können. Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Beispiel

// crt_getchar.c
// Use getchar to read a line from stdin.

#include <stdio.h>

int main()
{
    char buffer[81];
    int i, ch;

    for (i = 0; (i < 80) && ((ch = getchar()) != EOF)
                         && (ch != '\n'); i++)
    {
        buffer[i] = (char) ch;
    }

    // Terminate string with a null character
    buffer[i] = '\0';
    printf( "Input was: %s\n", buffer);
}

This textInput was: This text

Siehe auch

Stream-E/A
getc, getwc
fgetc, fgetwc
_getch, _getwch
putc, putwc
ungetc, ungetwc