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


putchar, putwchar

Записывает символ в поток stdout.

Синтаксис

int putchar(
   int c
);
wint_t putwchar(
   wchar_t c
);

Параметры

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

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

Возвращает записанный символ. Чтобы указать ошибку или условие окончания файла, а также putchar возвращать EOFи putwcputwchar возвращатьWEOF. putc Для всех четырех подпрограмм используйте ferror или feof проверка для ошибки или конца файла. При передаче указателя null для streamэтих функций создается недопустимое исключение параметров, как описано в разделе проверки параметров. Если выполнение разрешено продолжать, они возвращают EOF или WEOFзадают значение errnoEINVAL.

Дополнительные сведения о кодах возврата см. в разделе errno, _doserrno_sys_errlistи _sys_nerr.

Замечания

Подпрограмма putc записывает отдельный символ c в выходные данные stream в текущей позиции. Любое целое число может быть передано для putc, но записываются только младшие 8 битов. Подпрограмма putchar идентична putc( c, stdout ). Если возникает ошибка чтения, то в каждой подпрограмме для каждого потока устанавливается индикатор ошибки. putcи putchar аналогичны и соответственно реализуются как функции, так fputc_fputcharи макросы (см. Рекомендации выбора между функциями и макросами). putwc и putwchar — это версии putc и putchar с расширенными символами.

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

По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.

Сопоставления подпрограмм универсального текста

Подпрограмма TCHAR.H _UNICODE и _MBCS не определен _MBCS Определенные _UNICODE Определенные
_puttchar putchar putchar putwchar

Требования

Маршрут Обязательный заголовок
putchar <stdio.h>
putwchar <stdio.h> или <wchar.h>

Консоль не поддерживается в приложениях универсальная платформа Windows (UWP). Стандартные дескрипторы потока, связанные с консолью, stdinstdoutи stderr, должны быть перенаправлены перед тем, как функции времени выполнения C могут использовать их в приложениях UWP. Дополнительные сведения о совместимости см. в разделе Совместимость.

Библиотеки

Все версии библиотек времени выполнения языка C.

Пример

// crt_putchar.c
/* This program uses putc to write buffer
* to a stream. If an error occurs, the program
* stops before writing the entire buffer.
*/

#include <stdio.h>

int main( void )
{
   FILE *stream;
   char *p, buffer[] = "This is the line of output\n";
   int  ch;

   ch = 0;

   for( p = buffer; (ch != EOF) && (*p != '\0'); p++ )
      ch = putchar( *p );
}

Выходные данные

This is the line of output

См. также

Потоковый ввод-вывод
fputc, fputwc
getc, getwc