_scprintf_p、_scprintf_p_l、_scwprintf_p、_scwprintf_p_l
パラメーターは書式指定文字列で使用する順序を指定する機能の書式設定された文字列の文字数を返します。
int _scprintf_p(
const char *format [,
argument] ...
);
int _scprintf_p_l(
const char *format,
locale_t locale [,
argument] ...
);
int _scwprintf_p (
const wchar_t *format [,
argument] ...
);
int _scwprintf_p _l(
const wchar_t *format,
locale_t locale [,
argument] ...
);
パラメーター
format
書式指定文字列。argument
省略可能な引数。locale
使用するロケール。
戻り値
文字列が指定した書式指定コードを使用してファイルやバッファーに出力されるかまたは送信された場合は生成される文字数を返します。返される値には、終端の NULL 文字は含まれません。ワイド文字の場合は、_scwprintf_p が同じ機能を実行します。
書式指定文字列で引数を使用する順序を指定できることを _scprintf_p 割り当てると _scprintf の違いは _scprintf_p は位置指定パラメーターをサポートすることです。詳細については、「printf_p の位置指定パラメーター」を参照してください。
format が NULL ポインターの場合は、「パラメーターの検証」に説明されているように、無効なパラメーター ハンドラーが呼び出されます。実行の継続が許可された場合、これらの関数は -1 を返し、errno を EINVAL に設定します。
エラー コードの詳細については、「_doserrno、errno、_sys_errlist、および _sys_nerr」を参照してください。
解説
各 argument は format の対応する書式指定に応じて変換されます (存在する場合)。format は通常の文字で構成し、その形式と機能は printf 関数の format と同じです。
これらの関数のうち _l サフィックスが付けられたバージョンは、現在のスレッド ロケールの代わりに渡されたロケール パラメーターを使用する点を除いて同じです。
セキュリティに関するメモ |
---|
format にユーザー定義の文字列を指定しないでください。 |
汎用テキスト ルーチンのマップ
Tchar.h のルーチン |
_UNICODE および _MBCS が未定義の場合 |
_MBCS が定義されている場合 |
_UNICODE が定義されている場合 |
---|---|---|---|
_sctprintf_p |
_scprintf_p |
_scprintf_p |
_scwprintf_p |
_sctprintf_p_l |
_scprintf_p_l |
_scprintf_p_l |
_scwprintf_p_l |
必要条件
ルーチン |
必須ヘッダー |
---|---|
_scprintf_p, _scprintf_p_l |
<stdio.h> |
_scwprintf_p, _scwprintf_p_l |
<stdio.h> または <wchar.h> |
互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。