VS6.0里写个最简单的语句
MessageBox("Hello,World!");
编译运行没有任何错误。
而在VS2005写
MessageBox("Hello,World!");
出现错误提示:
error C2664: 'CWnd::MessageBoxW' : cannot convert parameter 1 from 'const char [13]' to 'LPCTSTR'
MessageBox("Hello,World!");
出现错误提示:
error C2664: 'CWnd::MessageBoxW' : cannot convert parameter 1 from 'const char [13]' to 'LPCTSTR'
解决方法是:
MessageBox(_T("Hello,World!"));或MessageBox(TEXT("Hello,World!"));
原因:
2005中默认的是unicode的,char是非unicode的。不同于以前在6.0中的写法MessageBox("Hello,World!")。
也可以在VS2005项目属性中改变设置 General->Character Set->Not Set
也可以在VS2005项目属性中改变设置 General->Character Set->Not Set