vfprintf、_vfprintf_l、vfwprintf、_vfwprintf_lvfprintf, _vfprintf_l, vfwprintf, _vfwprintf_l

引数リストへのポインターを使用して、書式付き出力を書き込みます。Write formatted output using a pointer to a list of arguments. これらの関数のセキュリティを強化したバージョンを使用できます。「vfprintf_s、_vfprintf_s_l、vfwprintf_s、_vfwprintf_s_l」を参照してください。More secure versions of these functions exist; see vfprintf_s, _vfprintf_s_l, vfwprintf_s, _vfwprintf_s_l.

構文Syntax

int vfprintf(
   FILE *stream,
   const char *format,
   va_list argptr
);
int _vfprintf_l(
   FILE *stream,
   const char *format,
   locale_t locale,
   va_list argptr
);
int vfwprintf(
   FILE *stream,
   const wchar_t *format,
   va_list argptr
);
int _vfwprintf_l(
   FILE *stream,
   const wchar_t *format,
   locale_t locale,
   va_list argptr
);

パラメーターParameters

streamstream
FILE 構造体へのポインター。Pointer to FILE structure.

formatformat
書式の指定。Format specification.

argptrargptr
引数リストへのポインター。Pointer to list of arguments.

localelocale
使用するロケール。The locale to use.

詳細については、「 printf 関数と wprintf 関数の書式指定フィールド」を参照してください。For more information, see Format Specifications.

戻り値Return Value

vfprintfvfwprintf出力エラーが発生した場合に、終端の null 文字または負の値をしないなど、書き込まれる文字数を返します。vfprintf and vfwprintf return the number of characters written, not including the terminating null character, or a negative value if an output error occurs. いずれかストリームまたは形式null ポインターの場合で説明されているとおり、無効なパラメーター ハンドラーが呼び出されますパラメーターの検証です。If either stream or format is a null pointer, the invalid parameter handler is invoked, as described in Parameter Validation. 実行の継続が許可された場合、関数は-1 を返し設定とerrnoEINVALします。If execution is allowed to continue, the functions return -1 and set errno to EINVAL.

エラー コードの詳細については、「_doserrno、errno、_sys_errlist、_sys_nerr」をご覧ください。For information on these and other error codes, see _doserrno, errno, _sys_errlist, and _sys_nerr.

RemarksRemarks

これらの各関数、引数リストへのポインターを受け取る書式設定して、特定のデータを書き込みますストリームします。Each of these functions takes a pointer to an argument list, then formats and writes the given data to stream.

vfwprintfのワイド文字バージョンは、 vfprintf; 2 つの関数は、動作、ストリームが ANSI モードで開かれている場合は同じです。vfwprintf is the wide-character version of vfprintf; the two functions behave identically if the stream is opened in ANSI mode. vfprintf UNICODE ストリームへの出力をサポートされていません。vfprintf doesn't currently support output into a UNICODE stream.

これらの関数のバージョン、 _l現在のスレッド ロケールの代わりに渡されたロケール パラメーターを使用する点を除いて、サフィックスは同じです。The versions of these functions with the _l suffix are identical except that they use the locale parameter passed in instead of the current thread locale.

重要

format にユーザー定義の文字列を指定しないでください。Ensure that format is not a user-defined string. 詳しくは、「 バッファー オーバーランの回避」をご覧ください。For more information, see Avoiding Buffer Overruns.

汎用テキスト ルーチンのマップGeneric-Text Routine Mappings

TCHAR.H のルーチンTCHAR.H routine _UNICODE および _MBCS が未定義の場合_UNICODE & _MBCS not defined _MBCS が定義されている場合_MBCS defined _UNICODE が定義されている場合_UNICODE defined
_vftprintf_vftprintf vfprintfvfprintf vfprintfvfprintf vfwprintfvfwprintf
_vftprintf_l_vftprintf_l _vfprintf_l_vfprintf_l _vfprintf_l_vfprintf_l _vfwprintf_l_vfwprintf_l

必要条件Requirements

ルーチンによって返される値Routine 必須ヘッダーRequired header 省略可能なヘッダーOptional headers
vfprintf_vfprintf_lvfprintf, _vfprintf_l <stdio.h> および <stdarg.h><stdio.h> and <stdarg.h> <varargs.h>*<varargs.h>*
vfwprintf_vfwprintf_lvfwprintf, _vfwprintf_l <stdio.h> または <wchar.h>、および <stdarg.h><stdio.h> or <wchar.h>, and <stdarg.h> <varargs.h>*<varargs.h>*

* UNIX V との互換性用。* Required for UNIX V compatibility.

互換性の詳細については、「 互換性」を参照してください。For additional compatibility information, see Compatibility.

関連項目See also

ストリーム入出力Stream I/O
vprintf 系関数vprintf Functions
fprintf、_fprintf_l、fwprintf、_fwprintf_lfprintf, _fprintf_l, fwprintf, _fwprintf_l
printf、_printf_l、wprintf、_wprintf_lprintf, _printf_l, wprintf, _wprintf_l
sprintf、_sprintf_l、swprintf、_swprintf_l、__swprintf_lsprintf, _sprintf_l, swprintf, _swprintf_l, __swprintf_l
va_arg、va_copy、va_end、va_startva_arg, va_copy, va_end, va_start