putchar, putwchar

stdout に文字を出力します。

構文

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

パラメーター

c
書き込む文字。

戻り値

書き込まれた文字を返します。 エラーまたはファイルの終わりの条件を示し、putc; putwc を返EOFしてputwcharputchar返しますWEOF。 4 つのルーチンすべてについて、ferrorエラーまたはfeofファイルの終わりにチェックします。 null ポインターstreamが渡された場合、「パラメーターの検証」で説明されているように、これらの関数は無効なパラメーター例外を生成します。 実行を続行できる場合は、次の値を返 EOF すか WEOF、または 、に設定 errno します EINVAL

リターン コードの詳細については、「errno_doserrno_sys_errlist、および _sys_nerr」を参照してください。

解説

putc ルーチンは、出力 c の現在位置に 1 つの文字 stream を書き込みます。 任意の整数を putc に渡すことができますが、下位 8 ビットのみが書き込まれます。 ルーチンは putchar 次と同じです putc( c, stdout )。 各ルーチンでは、読み取りエラーが発生すると、ストリームのエラー インジケーターが設定されます。 putcputchar、それぞれ似ています_fputcharfputcが、関数とマクロの両方として実装されます (関数とマクロの選択については、おすすめを参照してください)。 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) アプリではコンソールがサポートされていません。 コンソール (stdinstdoutstderr) に関連付けられている標準ストリームのハンドルは、C ランタイム関数によって UWP アプリで使用される前に、リダイレクトする必要があります。 互換性の詳細については、「 Compatibility」を参照してください。

ライブラリ

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