次の方法で共有


putchar, putwchar

stdout に文字を出力します。

構文

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

パラメーター

c
書き込む文字。

戻り値

書き込まれた文字を返します。 エラーまたはファイルの終わりの状態を示すには、EOF; putcおよびputchar戻り値putwcし、WEOFを返putwchar。 4 つのルーチンすべてについて、 ferror または feof を使用して、エラーまたはファイルの終わりを確認します。 streamに null ポインターを渡した場合、「パラメーターの検証で説明されているように、これらの関数は無効なパラメーター例外生成します。 実行を続行できる場合は、 EOF または WEOFを返し、 errnoEINVALに設定します。

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

解説

putc ルーチンは、出力 c の現在位置に 1 つの文字 stream を書き込みます。 任意の整数を putc に渡すことができますが、下位 8 ビットのみが書き込まれます。 putchar ルーチンは、putc( c, stdout )と同じです。 各ルーチンでは、読み取りエラーが発生すると、ストリームのエラー インジケーターが設定されます。 putcputcharはそれぞれ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) アプリではコンソールがサポートされていません。 コンソール (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