fputc, fputwc

ストリームに文字を書き込みます。

構文

int fputc(
   int c,
   FILE *stream
);
wint_t fputwc(
   wchar_t c,
   FILE *stream
);

パラメーター

c
書き込む文字。

stream
FILE 構造体へのポインター。

戻り値

これらの各関数は、書き込まれた文字を返します。 fputc の場合、EOF の戻り値はエラーを示します。 fputwc の場合、WEOF の戻り値はエラーを示します。 その場合stream、「NULLパラメーターの検証」で説明されているように、これらの関数は無効なパラメーター ハンドラーを呼び出します。 実行の継続が許可された場合、これらは EOF を返し、 errnoEINVALに設定します。

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

解説

これらの各関数は、定義されている場合、関連付けられたファイル位置インジケーターによって示される位置にあるファイルに 1 文字 c を書き込みます。 関数は、必要に応じてインジケーターを進める。 In fputc および fputwc、 ファイルは stream. ファイルが配置要求をサポートできない場合、または追加モードで開かれた場合、文字はストリームの末尾に追加されます。

ストリームが ANSI モードで開かれている場合、2 つの関数の動作は同じになります。 fputc では、UNICODE ストリームへの出力はサポートされていません。

サフィックス付きのバージョンは、他の _nolock スレッドによる干渉から保護されない点が異なります。 詳細については、次を参照してください_fputwc_nolock_fputc_nolock

ルーチン固有の解説は、次のとおりです。

ルーチンによって返される値 解説
fputc putc と同じですが、関数とマクロではなく関数としてのみ実装されています。
fputwc fputc のワイド文字バージョン。 cテキスト モードまたはバイナリ モードで開くとstream、マルチバイト文字またはワイド文字としてそれぞれ書き込まれます。

既定では、この関数のグローバル状態の適用対象は、アプリケーションになります。 この動作を変更するには、「CRT のグローバル状態」を参照してください

汎用テキスト ルーチンのマップ

TCHAR.H のルーチン _UNICODE_MBCS が定義されていない _MBCS が定義されている _UNICODE が定義されている
_fputtc fputc fputc fputwc

必要条件

機能 必須ヘッダー
fputc <stdio.h>
fputwc <stdio.h> または <wchar.h>

ユニバーサル Windows プラットフォーム (UWP) アプリではコンソールがサポートされていません。 C ランタイム関数が UWP アプリでそれらを使用するには、stdoutコンソールstdinに関連付けられている標準ストリーム ハンドル (つまりstderr、) をリダイレクトする必要があります。 互換性の詳細については、「 Compatibility」を参照してください。

// crt_fputc.c
// This program uses fputc
// to send a character array to stdout.

#include <stdio.h>

int main( void )
{
   char strptr1[] = "This is a test of fputc!!\n";
   char *p;

   // Print line to stream using fputc.
   p = strptr1;
   while( (*p != '\0') && fputc( *(p++), stdout ) != EOF ) ;

}
This is a test of fputc!!

関連項目

ストリーム入出力
fgetc, fgetwc
putc, putwc