CStringT::FormatMessage

格式化消息字符串。

void __cdecl FormatMessage(
   UINT nFormatID,
   [, argument]...
);
void __cdecl FormatMessage(
   PCXSTR pszFormat,
   [, argument]...
);

参数

  • nFormatID
    包含无格式文本的字符串资源标识符。

  • 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!"));   

要求

Header: cstringt.h

请参见

参考

CStringT选件类

CStringT::FormatMessageV