次の方法で共有


vprintf 系関数

vprintf の関数は特定のデスティネーションに引数リストおよび形式へのポインターを指定されたデータを書き込みます。関数はパラメーターの検証関数ではパラメーターは書式指定文字列で使用する順序を指定するバイト文字列出力先となるサポートするかどうかは異なります。

_vcprintf_vcwprintf

vfprintfvfwprintf

_vfprintf_p、_vfprintf_p_l、_vfwprintf_p、_vfwprintf_p_l

vfprintf_s、_vfprintf_s_l、vfwprintf_s、_vfwprintf_s_l

vprintfvwprintf

_vprintf_p、_vprintf_p_l、_vwprintf_p、_vwprintf_p_l

vprintf_s、_vprintf_s_l、vwprintf_s、_vwprintf_s_l

vsprintfvswprintf

_vsprintf_p、_vsprintf_p_l、_vswprintf_p、_vswprintf_p_l

vsprintf_s、_vsprintf_s_l、vswprintf_s、_vswprintf_s_l

_vscprintf、_vscprintf_l、_vscwprintf、_vscwprintf_l

_vsnprintf_vsnwprintf

解説

vprintf の機能を次の表に示すように対応する関数と似ています。ただしvprintf の各関数は引数リストに対応するの各関数が引数リストを使用するとポインターを受け取ります。

出力先の出力するこれらの関数のデータの形式は次のとおりです。

Function

対応する関数

出力先

パラメーターの検証

位置指定パラメーターのサポート

_vcprintf

_cprintf

コンソール

が null であるかを確認します。

no

_vcwprintf

_cwprintf

コンソール

null 値をチェックします。

no

vfprintf

fprintf

ストリーム

null 値をチェックします。

no

vfprintf_p

fprintf_p

ストリーム

null 値が有効な形式を確認します。

vfprintf_s

fprintf_s

ストリーム

null 値が有効な形式を確認します。

no

vfwprintf

fwprintf

ストリーム

null 値をチェックします。

no

vfwprintf_p

fwprintf_p

ストリーム

null 値が有効な形式を確認します。

vfwprintf_s

fwprintf_s

ストリーム

null 値が有効な形式を確認します。

no

vprintf

printf

Stdout

null 値をチェックします。

no

vprintf_p

printf_p

Stdout

null 値が有効な形式を確認します。

vprintf_s

printf_s

Stdout

null 値が有効な形式を確認します。

no

vwprintf

wprintf

Stdout

null 値をチェックします。

no

vwprintf_p

wprintf_p

Stdout

null 値が有効な形式を確認します。

vwprintf_s

wprintf_s

Stdout

null 値が有効な形式を確認します。

no

vsprintf

sprintf

バッファー が指すメモリ

null 値をチェックします。

no

vsprintf_p

sprintf_p

バッファー が指すメモリ

null 値が有効な形式を確認します。

vsprintf_s

sprintf_s

バッファー が指すメモリ

null 値が有効な形式を確認します。

no

vswprintf

swprintf

バッファー が指すメモリ

null 値をチェックします。

no

vswprintf_p

swprintf_p

バッファー が指すメモリ

null 値が有効な形式を確認します。

vswprintf_s

swprintf_s

バッファー が指すメモリ

null 値が有効な形式を確認します。

no

_vscprintf

_vscprintf

バッファー が指すメモリ

null 値をチェックします。

no

_vscwprintf

_vscwprintf

バッファー が指すメモリ

null 値をチェックします。

no

_vsnprintf

_snprintf

バッファー が指すメモリ

null 値をチェックします。

no

_vsnwprintf

_snwprintf

バッファー が指すメモリ

null 値をチェックします。

no

argptr の引数に VARARGS.H と STDARG.H. で定義されている型 va_list があります。argptr の変数は va_start して初期化しva_arg の後続の呼び出しで再初期化されることがあります。; 引数 に対応する 書式 指定に応じて出力に変換され送信される引数のリストの先頭への argptr のをポイントします。 形式に printf の書式指定 引数 と同じ形式と関数があります。これらの関数が va_end を呼び出しません。vprintf の各関数の詳細については前の表に示すように対応する関数の説明を参照してください。

_vsnprintfvsprintfバッファーバイト数 より多くを作成することです。

名前の w の挿入辞でこれらの関数の各バージョンは w の挿入辞せずに対応する関数のワイド文字バージョンです。; これらのワイド文字単位の各関数では バッファー形式は ワイド文字列です。はワイド文字の関数はSBCS の対応する関数と同様に動作します。

_s_p のサフィックスが付いているこれらの関数の各バージョンはセキュリティが強化されたバージョンです。これらのバージョンは無効な書式指定文字が使用されません) 書式指定文字列が整形式でない場合書式指定文字列を検証し例外を生成します (たとえば)。

_p のサフィックスが付いているこれらの関数の各バージョンは指定した書式指定文字列で引数を使用する順序を指定できます。詳細については、「printf_p の位置指定パラメーター」を参照してください。

vsprintfvswprintf_vsnprintf_vsnwprintf の場合は配置重複する文字列の間に発生した場合の動作は未定義です。

セキュリティに関するメモセキュリティに関するメモ

形式が ユーザー定義文字列ではないことを確認します。詳細については、「Avoiding Buffer Overruns」を参照してください。これらの関数のセキュリティが強化されたバージョンを使用している場合 (_s または _p のサフィックス)ユーザーが指定した書式指定文字列はユーザー指定の文字列に無効な書式指定文字が含まれている場合は無効なパラメーターの例外が発生する可能性があります。

参照

関連項目

ストリーム入出力

fprintf、_fprintf_l、fwprintf、_fwprintf_l

printf、_printf_l、wprintf、_wprintf_l

sprintf、_sprintf_l、swprintf、_swprintf_l、__swprintf_l

va_arg、va_end、va_start