我正在尝试从来自错误消息的子字符串构建字符串:
// the error message
const char* error_msg = e.what();
size_t const cchDest = 100;
TCHAR pszDest[cchDest];
LPCTSTR pszFormat = TEXT("%s %s");
TCHAR* pszTxt = TEXT("The error is: ");
HRESULT hr = StringCchPrintf(pszDest, cchDest, pszFormat, pszTxt, error_msg );
我希望第二个%s
将被替换为 的值error_msg
,但是输出是:
The error is: ☐☐a
我如何修改上面的代码以显示子字符串?
EDIT1 我也尝试了以下方法,但我得到的只是一个盒子。
TCHAR* pszTxt = TEXT("The error is: %c", error_msg );
HRESULT hr = StringCchPrintf(pszDest, cchDest, pszTxt);