次の方法で共有


vprintf 系関数

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

_vcprintf、_vcwprintf

vfprintf、vfwprintf

_vfprintf_p、_vfprintf_p_l、_vfwprintf_p、_vfwprintf_p_l

vfprintf_s、_vfprintf_s_l、vfwprintf_s、_vfwprintf_s_l

vprintf、vwprintf

_vprintf_p、_vprintf_p_l、_vwprintf_p、_vwprintf_p_l

vprintf_s、_vprintf_s_l、vwprintf_s、_vwprintf_s_l

vsprintf、vswprintf

_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 の各関数は、引数リストに対応する機能の各関数が引数リストを受け取る場合は、ポインターを受け取ります。

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

関数

対応する関数

出力先

パラメーターの検証

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

_vcprintf

_cprintf

コンソール

null をチェックします。

no

_vcwprintf

_cwprintf

コンソール

null をチェックします。

no

vfprintf

fprintf

Stream

null をチェックします。

no

vfprintf_p

fprintf_p

Stream

空白と有効な形式を確認します。

vfprintf_s

fprintf_s

Stream

空白と有効な形式を確認します。

no

vfwprintf

fwprintf

Stream

null をチェックします。

no

vfwprintf_p

fwprintf_p

Stream

空白と有効な形式を確認します。

vfwprintf_s

fwprintf_s

Stream

空白と有効な形式を確認します。

no

vprintf

printf

Stdout

null をチェックします。

no

vprintf_p

printf_p

Stdout

空白と有効な形式を確認します。

vprintf_s

printf_s

Stdout

空白と有効な形式を確認します。

no

vwprintf

wprintf

Stdout

null をチェックします。

no

vwprintf_p

wprintf_p

Stdout

空白と有効な形式を確認します。

vwprintf_s

wprintf_s

Stdout

空白と有効な形式を確認します。

no

vsprintf

sprintf

buffer が指すメモリ

null をチェックします。

no

vsprintf_p

sprintf_p

buffer が指すメモリ

空白と有効な形式を確認します。

vsprintf_s

sprintf_s

buffer が指すメモリ

空白と有効な形式を確認します。

no

vswprintf

swprintf

buffer が指すメモリ

null をチェックします。

no

vswprintf_p

swprintf_p

buffer が指すメモリ

空白と有効な形式を確認します。

vswprintf_s

swprintf_s

buffer が指すメモリ

空白と有効な形式を確認します。

no

_vscprintf

_vscprintf

buffer が指すメモリ

null をチェックします。

no

_vscwprintf

_vscwprintf

buffer が指すメモリ

null をチェックします。

no

_vsnprintf

_snprintf

buffer が指すメモリ

null をチェックします。

no

_vsnwprintf

_snwprintf

buffer が指すメモリ

null をチェックします。

no

argptr 引数に VARARGS.H と STDARG.H.で定義されている型 va_listがあります。 argptr の変数は va_start, によって初期化されなければなり、va_arg の以降の呼び出しによって再初期化される場合があります。; argptr は format 引数 の対応する仕様に従って出力に変換され、送信された引数リストの先頭をポイントするようになります。 形式にprintf関数の format と同じフォームと関数があります。 これらの関数によって va_endを呼び出しません。 vprintf の各関数の詳細については、前の表に示したように、対応する関数の説明を参照してください。

_vsnprintfvsprintfバッファーバイト数 より多いを記述することです。

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

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

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

vsprintfvswprintf_vsnprintf_vsnwprintf用にコピーが重なり合う文字列間にした場合の動作は未定義です。

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

format にユーザー定義の文字列を指定します。詳細については、「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_copy、va_end、va_start