尝试生成tchar时从非宽字符串初始化的int数组
我试图在这里制作一个tchar数组,如下所示: TCHAR c_wText[100]=“此处为字符串”) 但在编译过程中,我收到了一条错误消息: 从非宽字符串初始化的int数组尝试生成tchar时从非宽字符串初始化的int数组,c,tchar,C,Tchar,我试图在这里制作一个tchar数组,如下所示: TCHAR c_wText[100]=“此处为字符串”) 但在编译过程中,我收到了一条错误消息: 从非宽字符串初始化的int数组 我错过了什么吗?我在总结@WhozCraig善意地说的话: 对于unicode构建,需要同时定义unicode和_unicode 然后使用TCHAR和_T(“您的字符串”)可以显示您的#include文件列表吗。在问题中;这里没有评论。(为了好玩,试着用文本(“这里的字符串”)代替)。如果你在字符串前面放一个L(所以\T
我错过了什么吗?我在总结@WhozCraig善意地说的话: 对于unicode构建,需要同时定义unicode和_unicode
然后使用TCHAR和_T(“您的字符串”)可以显示您的
#include
文件列表吗。在问题中;这里没有评论。(为了好玩,试着用文本(“这里的字符串”)
代替)。如果你在字符串前面放一个L
(所以\T(这里的字符串”);
)@slugonamission有趣的想法。特别是考虑到\u T()
宏应该正好做到这一点,假设他正在编译Unicode,如果TCHAR
很宽,他应该编译Unicode;看起来不错,谢谢@Vanguard如果这样做了,那就错了。该宏应该在Unicode版本中为您预先添加L
。您是否有可能意外地从预处理器列表中删除了一个预处理器Unicode#define?有两种,UNICODE和_UNICODE。一个用于Windows API,另一个用于CRT。您需要同时检查它们,因为如果它们不一致,这不是唯一损坏的东西。