次の方法で共有


_vscprintf、_vscprintf_l、_vscwprintf、_vscwprintf_l

更新 : 2007 年 11 月

引数リストへのポインタを使用し、書式指定文字列内の文字数を返します。

int _vscprintf(
   const char *format,
      va_list argptr 
);
int _vscprintf_l(
      const char *format,
   locale_t locale,
      va_list argptr 
);
int _vscwprintf(
      const wchar_t *format,
   va_list argptr 
);
int _vscwprintf_l(
   const wchar_t *format,
   locale_t locale,
   va_list argptr 
);

パラメータ

  • format
    書式指定文字列。

  • argptr
    引数リストへのポインタ。

  • locale
    使用するロケール。

詳細については、「scanf 関数と wscanf 関数の書式指定フィールド」を参照してください。

戻り値

_vscprintf 関数は、引数リストが指す文字列が、指定の書式化コードを使用して出力されるか、またはファイルやバッファに送信された場合に生成される文字数を返します。戻り値には、終端の null 文字が含まれません。ワイド文字の場合、_vscwprintf が同じ機能です。

これらの関数のうち _l サフィックスが付けられたバージョンは、現在のスレッド ロケールの代わりに渡されたロケール パラメータを使用する点を除いて同じです。

format が null ポインタの場合は、「パラメータの検証」に説明されているように、無効なパラメータ ハンドラが呼び出されます。実行の継続が許可された場合、関数は -1 を返し、errno を EINVAL に設定します。

解説

各 argument (指定されている場合) は、format 中の対応する書式指定に従って変換されます。format は通常の文字で構成され、その形式と機能は printf 関数の format と同じです。

w05tbk72.alert_security(ja-jp,VS.90).gifセキュリティに関するメモ :

format がユーザー定義文字列の場合は、終端が null で、正しい数と型のパラメータが含まれていることを必ず確認してください。詳細については、「Avoiding Buffer Overruns」を参照してください。

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

TCHAR.H のルーチン

_UNICODE および _MBCS が未定義の場合

_MBCS が定義されている場合

_UNICODE が定義されている場合

_vsctprintf

_vscprintf

_vscprintf

_vscwprintf

_vsctprintf_l

_vscprintf_l

_vscprintf_l

_vscwprintf_l

必要条件

ルーチン

必須ヘッダー

_vscprintf, _vscprintf_l

<stdio.h>

_vscwprintf, _vscwprintf_l

<stdio.h> または <wchar.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

使用例

vsprintf」の例を参照してください。

参照

参照

ストリーム入出力

fprintf、_fprintf_l、fwprintf、_fwprintf_l

printf、_printf_l、wprintf、_wprintf_l

scanf、_scanf_l、wscanf、_wscanf_l

sscanf、_sscanf_l、swscanf、_swscanf_l

vprintf 系関数