_getchar_nolock
, _getwchar_nolock
Liest ein Zeichen aus der Standardeingabe ohne zu sperren.
Syntax
int _getchar_nolock( void );
wint_t _getwchar_nolock( void );
Rückgabewert
Siehe getchar
, getwchar
.
Hinweise
_getchar_nolock
und _getwchar_nolock
sind mit getchar
und getwchar
nahezu identisch, allerdings sind sie nicht vor Störungen durch andere Threads geschützt. Sie sind möglicherweise schneller, da kein Mehraufwand zur Sperrung anderer Threads erforderlich ist. 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.
Mapping generischer Textroutinen
Tchar.h-Routine | _UNICODE und _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_gettchar_nolock |
_getchar_nolock |
_getchar_nolock |
_getwchar_nolock |
Anforderungen
Routine | Erforderlicher Header |
---|---|
_getchar_nolock |
<stdio.h> |
_getwchar_nolock |
<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-Laufzeitfunktionen in UWP-Apps verwendet werden können. Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Beispiel
// crt_getchar_nolock.c
// Use _getchar_nolock to read a line from stdin.
#include <stdio.h>
int main()
{
char buffer[81];
int i, ch;
for (i = 0; (i < 80) && ((ch = _getchar_nolock()) != 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