永发信息网

LPTSTR lpStr = new TCHAR[32]; TCHAR* szBuf = _T("Hello");代码含义?

答案:2  悬赏:70  手机版
解决时间 2021-01-31 10:43
LPTSTR lpStr = new TCHAR[32]; TCHAR* szBuf = _T("Hello");代码含义?
最佳答案
LPTSTR即TCHAR*

TCHAR是自适应类型,取决于项目设置是否“使用UNICODE”,在UNICODE下TCHAR就是wchar_t,否则就是char。
_T()用来适应字符串常量,UNICODE下_T("Hello")会变成L"Hello",否则就是"Hello"。

L用来表示字符串常量是宽版的。
要理解这些首先要知道VC下字符串有宽版和非单字节版,宽版字符串基本单元是wchar_t,本质上是short int,占两个字节。单字节版字符串基本单元是char。VC api中往往会用一些其他字母代替:
LPSTR - char*
LPCSTR - const char*
LPWSTR - wchar_t*
LPCWSTR - const wchar_t*
TCHAR - wchar_t 或者 char
LPTSTR - TCHAR*
LPCTSTR - const TCHAR*

所以以上代码等价于
UNICODE情况下:
wchar_t* lpStr = new wchar_t[32];
wchar_t* szBuf = L"Hello";
非UNICODE情况下:
char* lpStr = new char[32];
char* szBuf = "Hello";
全部回答
第一个定义了字符数组lpStr
第二个定义了字符指针szBuf
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
纽崔莱儿童高蛋白饮品多少钱
歌潮会酒吧地址好找么,我有些事要过去
电动车电池以旧换新问题
2013年5月1日,A公司采用预收款方式销售甲商
紫薯汤。煲成这个颜色对吗?会不会是染了色素
今天从官网刚下了使命召唤ol完整版,在空中收
love·吧地址在哪,我要去那里办事
新动力酒吧地址在什么地方,想过去办事
人体排出尿液,不仅起到排出 的作用
梦幻城酒吧地址在什么地方,我要处理点事
富康街与真武路十字路口怎么走坐几路公交车
7.对于预应力混凝土构件,净截面特征和换算截
新星河酒吧地址有知道的么?有点事想过去
下图为二次大战前,欧洲各地农业集约度的示意
爵士蓝调怎么去啊,我要去那办事
推荐资讯
12V/100AH 电池 线鼻用多大
急性肾小球肾炎前驱感染史通常为A.链球菌感染
请教阿里云是否可以部署自己的镜像文件
岳庙有什么好玩的
大家好,Excel里,像图片上筛选好了,要按车
广东人最喜欢喝什么啤酒?
平面α与平面β平行的条件可以是(  )A.
非常感谢!但我住虹口区,附近有宜家家居吗?
在国际收支失衡的调节中,应付临时性失衡一般
2016惠阳八小招生
洪泽湖畔地址好找么,我有些事要过去
【运输线路】材料运输方式按运输线路分为()。
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?