vprintf_s、vwprintf_s

提供: RAD Studio
移動先: 案内検索

stdio.h:インデックス への移動



ヘッダー ファイル

stdio.h

カテゴリ

書式付き入出力関数

プロトタイプ

int vprintf_s(const char * restrict format, va_list arg);

int vwprintf_s(const wchar_t * restrict format, va_list arg);

説明

vprintf、vwprintf の代わりとなるもので、セキュリティが強化されています。

メモ: Win32 GUI アプリケーションでは、この関数を使用しないでください。

v...printf 関数群は、...printf 関数群の代替エントリ ポイントとして知られています。 対応する ...printf 関数とちょうど同じ動作をしますが、引数リストではなく、引数リストへのポインタを受け取ります。

vprintf_svprintf、vwprintf と同等ですが、streamformat%s 形式指定子に対応する arg 内の項目の妥当性に関する実行時制約が付け加えられています(ここで言及したものはすべて NULL ポインタ以外でなければなりません)。

戻り値

vprintf_s は出力文字数を返します。 エラーが発生した場合、vprintf_s は負の値を返します。

#include <stdio.h>
#include <stdarg.h>
int vpf(char *fmt, ...)
{
   va_list argptr;
   int cnt;
   va_start(argptr, fmt);
   cnt = vprintf_s(fmt, argptr);
   va_end(argptr);
   return(cnt);
}
int main(void)
{
   int inumber = 30;
   float fnumber = 90.0;
   char *string = "abc";
   vpf("%d %f %s\n",inumber,fnumber,string);
   return 0;
}

移植性

POSIX Win32 ANSI C ANSI C++

vprintf_s

+

+

+

+

vwprintf_s

+

+

+


関連項目