_getchar_nolock
, _getwchar_nolock
Přečte znak ze standardního vstupu bez uzamčení.
Syntaxe
int _getchar_nolock( void );
wint_t _getwchar_nolock( void );
Vrácená hodnota
Viz getchar
, getwchar
.
Poznámky
_getchar_nolock
a _getwchar_nolock
jsou identické s tím getwchar
rozdílemgetchar
, že nejsou chráněny před rušením jinými vlákny. Můžou být rychlejší, protože neúčtují režijní náklady na uzamčení jiných vláken. Tyto funkce používejte pouze v kontextech bezpečných pro přístup z více vláken, jako jsou aplikace s jedním vláknem, nebo v případě, že volající obor již zpracovává izolaci vláken.
Mapování rutin obecného textu
Rutina Tchar.h | _UNICODE a _MBCS není definován |
_MBCS definovaný |
_UNICODE definovaný |
---|---|---|---|
_gettchar_nolock |
_getchar_nolock |
_getchar_nolock |
_getwchar_nolock |
Požadavky
Rutina | Požadovaný hlavičkový soubor |
---|---|
_getchar_nolock |
<stdio.h> |
_getwchar_nolock |
<stdio.h> nebo <wchar.h> |
Konzola není podporována v aplikacích pro Univerzální platforma Windows (UPW). Standardní zpracování datových proudů, které jsou přidružené ke konzole , a , stderr
musí být přesměrovány před tím, stdin
stdout
než je funkce runtime jazyka C mohou používat v aplikacích pro UPW. Další informace o kompatibilitě najdete v tématu Kompatibilita.
Příklad
// 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
Viz také
Vstupně-výstupní operace streamu
getc
, getwc
fgetc
, fgetwc
_getch
, _getwch
putc
, putwc
ungetc
, ungetwc