51Testing软件测试论坛
标题:
c++Test 处理wchar_t 和宽字符(中文)的问题,请高手出招!
[打印本页]
作者:
ybcad
时间:
2007-7-20 14:07
标题:
c++Test 处理wchar_t 和宽字符(中文)的问题,请高手出招!
我的t1.cpp文件代码内容:
#include <wchar.h>
void fun1()
{
wchar_t *pt = L"你"; // a chinese characters 你
// do nothing
}
int main()
{
fun1();
return 0;
}
用C++Test测试,报如下错误
Compiling E:\study\c++test\t1\Product\t1.cpp_0\SourceCodeTestCases\TestHarness\Src\t1_7000.cpp
E:\study\t1\t1.cpp(5) : error C2002: invalid wide-character constant
E:\study\t1\t1.cpp(5) : error C2002: invalid wide-character constant
Error: Compile failed for: E:\study\c++test\t1\Product\t1.cpp_0\SourceCodeTestCases\TestHarness\Src\t1_7000.cpp .
查看C++Test自动产生的文件t1_7000.cpp,发现如下语句:
void fun1()
{
…
auto wchar_t *pt = (L"\xc4\xe3"); CPPTEST_STACK_TRACE_STMT_INFO(12, __FILE__, 8, 1, 0, 0)
….
}
正确的应该是wchar_t *pt = (L"\xc4e3"), c++Test没有正确将中文字符按照两个字节格式赋值给 wchar_t *pt 导致编译错误。
请问哪位老大能解决这个问题?多谢!
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2