以下
代码在MSVC 2008上使用/ analyze编译时
生成警告
C6284:在
调用函数时需要字符串时,对象作为参数’%s’传递.
CString strTmp,str;
str = L"aaa.txt"
strTmp.Format (L"File: %s",str);
我正在寻找一个不需要static_cast的好解决方案
Microsoft描述了CString与变量参数
函数
here的
用法:
CString kindOfFruit = "bananas";
int howmany = 25;
printf_s( "You have %d %s\n",howmany,(LPCTSTR)kindOfFruit );
作为替代方案,您还可以使用方法PCXSTR CString :: GetString()const;尝试修复警告:
CString strTmp,str;
str = L"aaa.txt"
strTmp.Format (L"File: %s",str.GetString());