|
|
发表于 2006-2-24 17:57:00
|
显示全部楼层
Re:TEXT TCHAR char
其实
TEXT就是L
有点象这样:
#define TEXT(str) L##str
##是连接的意思就是将L和str联在一起了,表示宽字符。
l"Hello World",和"Hello World"是不同的,前一个占用24个char,后一个占用了12个char
如果定义了
#define UNICODE
TCHAR就代表宽字符wchar(2*sizeof(char)),否则TCHAR就代表char
也就是说在有
#define UNICODE
的情况下
TChar strFileName[MAX_PATH] = TEXT(""); //代表定义了一个空的宽字符串
char strFileName[MAX_PATH]="";//代表定义了一个ASCII字符串
如果没有定义#define UNICODE那么
TChar strFileName[MAX_PATH] = TEXT(""); //编译时似乎会报错,没尝试过
char strFileName[MAX_PATH]="";//代表定义了一个ASCII字符串 |
|