_getchar_nolock, _getwchar_nolock
Считывает символ из стандартного входного потока.
int _getchar_nolock( void );
wint_t _getwchar_nolock( void );
Возвращаемое значение
См. раздел getchar, getwchar.
Заметки
Функции _getchar_nolock и _getwchar_nolock совпадают с getchar и getwchar за исключением того, что они не защищены от вмешательства других потоков. Они могут выполняться быстрее, поскольку не создают дополнительную нагрузку, связанную с блокировкой работы других потоков. Используйте эти функции только в потокобезопасных контекстах, например в однопоточных приложениях или если вызываемая область уже обрабатывает изоляцию потоков.
Универсальное текстовое сопоставление функций
Подпрограмма Tchar.h |
_UNICODE и _MBCS не определены |
_MBCS определено |
_UNICODE определено |
---|---|---|---|
_gettchar_nolock |
_getchar_nolock |
_getchar_nolock |
_getwchar_nolock |
Требования
Подпрограмма |
Обязательный заголовок |
---|---|
_getchar_nolock |
<stdio.h> |
_getwchar_nolock |
<stdio.h> или <wchar.h> |
Консоль не поддерживается в приложениях Магазин Windows. Стандартные дескрипторы потока, связанные с консолью — stdin, stdout и stderr — необходимо перенаправить, чтобы функции C времени выполнения могли использовать их в приложениях Магазин Windows. Дополнительные сведения о совместимости см. в разделе Совместимость.
Пример
// 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);
}