CStringT::FormatMessage
メッセージ文字列を書式化します。
void __cdecl FormatMessage(
UINT nFormatID,
[, argument]...
);
void __cdecl FormatMessage(
PCXSTR pszFormat,
[, argument]...
);
パラメーター
nFormatID
The string メッセージの書式なしテキストを含むリソース識別子。pszFormat
書式指定文字列へのポインター。これは、挿入のスキャンされ、それに応じて書式設定されます。書式指定文字列は、パラメーターを任意の順序で挿入できるようにする以外、ランタイムの関数の printfの式の形式の文字列に似ています。argument
省略可能な引数。
解説
関数は、入力としてメッセージ署名が必要です。メッセージは pszFormat 定義して、nFormatIDによって識別される文字列リソースから決定されます。関数は埋め込み挿入のシーケンスを処理する CStringT のオブジェクトに要求して書式指定されたメッセージ テキストをコピーします。
[!メモ]
FormatMessage は、最近書式設定された文字列のシステム メモリを割り当てようとします。この試みに失敗すると、メモリ不足の例外が自動的にスローされます。
各挿入は pszFormat または nFormatID のパラメーターの直後に対応するパラメーターが必要です。メッセージ テキスト内では、複数のエスケープ シーケンスは、動的にメッセージを書式設定するにサポートされます。詳細については、Windows SDKの Windows FormatMessage 関数を参照してください。
使用例
// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;
CAtlString str;
int nAsked = 5;
int nAgree = 4;
str.FormatMessage(_T("%1!d! of %2!d! writers agree: Soccer is %3%!"),
nAgree, nAsked, _T("Best"));
ASSERT(str == _T("4 of 5 writers agree: Soccer is Best!"));
必要条件
ヘッダー: cstringt.h