啃啃 发表于 2014-8-21 22:46:59

关于TCHAR的小问题!

问题如下,求各位高手指点!
include”tchar.h”
…其余头文件都已定义
    TCHARszOut[] = TEXT(”08400”);
    TCHARszText ;
    TCHAR   szChar =// 这里本来是应该等于T的,可是用TEXT(”T”) 不行   直接赋值'T'是否正确?
//    lstrcat(szText , szChar);函数报错,为什么?本意是将szText的第一个字符赋值为T   应该怎么做? 直接赋值的话后面程序中还有同样的问题存在
//wsprintf(szText , TEXT(”%c%s”), 'T' , szOut); //这是我使用的第二种方法,程序运行时报错,为什么呢?
    接下来也是同样的操作
此时设szText = ”T08400”
   wsprintf(szText ,TEXT(”%c%d”),'-', 495);
   
求各位大侠指点,TCHAR字符数组如何粘贴字符或整型数据!   别告诉我直接赋值啊,这是注册机中的实现算法,事先不知道字符串大小与整型粘贴内容!
   
   

   

计机羊咩咩 发表于 2014-8-21 22:47:00

请您注意TEXT("")是字符串你将字符串赋给给一个TCHAR变量当然错误
lstrcat(szText , szChar)你这个是字符串和字符变量一起做参数也错
szText = ”T08400”这是char类型了L”T08400”才是Unicode
wsprintf(szText , TEXT(”%c%s”), 'T' , szOut)这里,我写的话会写
wsprintf(szText , TEXT(”%c%s”),L'T' , szOut)

你对APIUnicode都不熟悉建议去看看API档案

啃啃 发表于 2014-8-22 20:37:48

不好意思,忘打那些了,不过问题已近解决了,还是谢谢你

tlwangxd 发表于 2014-12-5 06:59:40

学习

智商是硬伤 发表于 2015-9-3 08:10:40

{:7_146:}
页: [1]
查看完整版本: 关于TCHAR的小问题!