Поделиться через


_ungetc_nolock, _ungetwc_nolock

Отправляет символ обратно в поток.

int _ungetc_nolock(
   int c,
   FILE *stream 
);
wint_t _ungetwc_nolock(
   wint_t c,
   FILE *stream 
);

Параметры

  • c
    Символ, который требуется вернуть.

  • stream
    Указатель на структуру FILE.

Возвращаемое значение

В случае успеха каждая из этих функций возвращает символьный аргумент c*.* Если c нельзя отправить обратно или если не было прочитано символов, входной поток не изменяется и _ungetc_nolock возвращает EOF; _ungetwc_nolock возвращает WEOF. Если stream имеет значение NULL, возвращается EOF или WEOF и errno устанавливается в EINVAL.

Дополнительные сведения об этих и других кодах ошибок см. в разделе _doserrno, errno, _sys_errlist и _sys_nerr.

Заметки

Эти функции являются неблокирующими версиями ungetc и ungetwc соответственно. Версии с суффиксом _nolock идентичны за исключением того, что они не защищены от взаимодействия с другими потоками. Они могут выполняться быстрее, поскольку не создают дополнительную нагрузку, связанную с блокировкой работы других потоков. Используйте эти функции только в потокобезопасных контекстах, например в однопоточных приложениях или если вызываемая область уже обрабатывает изоляцию потоков.

Универсальное текстовое сопоставление функций

Подпрограмма TCHAR.H

_UNICODE & _MBCS не определены

_MBCS определено

_UNICODE определено

_ungettc_nolock

_ungetc_nolock

_ungetc_nolock

_ungetwc_nolock

Требования

Подпрограмма

Обязательный заголовок

_ungetc_nolock

<stdio.h>

_ungetwc_nolock

<stdio.h> или <wchar.h>

Дополнительные сведения о совместимости см. в разделе Совместимость во введении.

Эквивалент в .NET Framework

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

См. также

Ссылки

Потоковый ввод-вывод

getc, getwc

putc, putwc