2010-09-17 93 views
1

我试图编译在Visual Studio中对C窗户++在我的测试应用程序下面的代码:如何在Visual Studio(C++)中将文字中文字符串分配给wchar_t *?

const wchar_t* chinese = "好久不见"; 

,但我得到了以下错误:

error C2440: 'initializing' : cannot convert from 'const char [5]' to 'const wchar_t *

我使用Unicode编译,所以我对此感到困惑。该错误消失,如果我投的文字是这样的:

const wchar_t* chinese = (wchar_t*)"好久不见"; 

我不知道那是安全的,也没有我真的想这样做,这样我怎么能解决这个问题。

谢谢!

回答

12

你想要一个宽字符串文字,所以前缀字符串常量与L

const wchar_t* chinese = L"好久不见"; 
1

像GMAN说,一个“L”前缀字符串。 L将字符串标识为宽字符类型(wchar_t)。

const wchar_t* chinese = L"好久不见";

相关问题