CStringT::FormatMessage
Форматирует строки сообщения.
void __cdecl FormatMessage(
UINT nFormatID,
[, argument]...
);
void __cdecl FormatMessage(
PCXSTR pszFormat,
[, argument]...
);
Параметры
nFormatID
Идентификатор ресурса строки, содержащий неформатированный текст сообщения.pszFormat
Указывает на строку формат- элемента управления.Она будет просмотрена для вставок и форматироватьа соответственно.Строка формата аналогична функции среды выполнения printf- вставка строки форматирования стилей, за исключением того, что она позволяет параметров, вставляемый в произвольный порядок.argument
Необязательные аргументы.
Заметки
Функция требует определения сообщений в качестве входных данных.Определение сообщения задается pszFormat или из строкового ресурса, указанного nFormatID.Функция копирует форматированный текст сообщения на объект CStringT, обрабатывающий все внедренные последовательности вставки, если требуется.
Примечание |
---|
FormatMessage пытается выбрать системная память для вновь форматируемой строки.Если эта попытка завершается ошибкой, возникает исключение памяти автоматически. |
Каждая инструкция insert должна иметь соответствующий параметр определяется параметром pszFormat или nFormatID.В текст сообщения, несколько escape-последовательности поддерживаются для динамически форматирования сообщения.Дополнительные сведения см. в описании функции Windows FormatMessage в Windows SDK.
Пример
// 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!"));
Требования
Header: cstringt.h