notwolf 发表于 2017-7-23 11:40:57

定义UNICOD后tchar还是ascii型

为什么我定义了_UNICODE,并且包括了tchar.h这个头文件后,使用TCHAR它还是字符型的啊?#include<stdio.h>

#include<windows.h>
#include<string.h>

#define UNICODEok
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow)
{
        TCHAR a[]=__TEXT("hellowolrd!");
        printf("%d",sizeof(a))
        ;
        return 0;
}

最终打印的结果是12如果是UNICODE的话不应该是24么?

notwolf 发表于 2017-7-23 12:32:40

已经解决了,定义 UNICODE的预处理命令应该在包含文件命令之前

BngThea 发表于 2017-7-23 16:18:31

2楼正解,不然不会生效

notwolf 发表于 2017-7-24 15:57:45

BngThea 发表于 2017-7-23 16:18
2楼正解,不然不会生效

自己折腾好费劲。。。
页: [1]
查看完整版本: 定义UNICOD后tchar还是ascii型