标题:[求助]TextOut()打印的问题
只看楼主
osamaleiyu
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-5-22
 问题点数:0 回复次数:8 
[求助]TextOut()打印的问题

TextOut(hDCPrint,0,0,buf,8);
我用这个语句想打印一些 CHAR数组(buf里)的内容,如果是数字或者字母没问题,但如果是汉字就是乱码,请哪位大哥指点一下,谢谢先了

搜索更多相关主题的帖子: TextOut 打印 buf 数字 
2006-07-12 13:54
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
得分:0 

看一下宏_T你就知道了.


天行健,君子以自强不息!!QQ:68660681
2006-07-12 16:51
osamaleiyu
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-5-22
得分:0 
应该怎么做,能说详细一点吗,谢谢
2006-07-12 17:22
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
得分:0 

汉字占2个字节,16个bit..字符才是8个字符..


天行健,君子以自强不息!!QQ:68660681
2006-07-12 17:27
osamaleiyu
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-5-22
得分:0 
TextOut(hDCPrint,0,0,buf,8);
那应该如何定义BUF的类型了?能举例说明一下吗,谢谢谢谢
2006-07-12 17:48
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
得分:0 
char buf[8] = _T("我的程序");
TextOut(hDCPrint,0,0,buf,sizeof(buf));

天行健,君子以自强不息!!QQ:68660681
2006-07-12 18:40
aogun
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:638
专家分:0
注 册:2006-4-5
得分:0 

有点小问题,char buf[8] = _T("我的程序");,"我的程序"占用8个字节,那么中止符'\0'的位置就没了,应该是buf[9]
另外TextOut(hDCPrint,0,0,buf,sizeof(buf));中sizeof只是buf这个数组的长度,并不是其中的文字长度,如果数组大小大于文字长度那么会输出不必要的信息或者乱码,应该用strlen(buf)


世界上总共有 10 种人,一种懂得什么是二进制 ,一种不懂。
2006-07-13 09:08
osamaleiyu
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-5-22
得分:0 
非常感谢maoguoqing和版主
2006-07-13 10:32
ligt0610
Rank: 1
等 级:新手上路
帖 子:204
专家分:5
注 册:2006-6-29
得分:0 

又学到新东西了呵呵


通过不断的学习与思考才是提高自己能力的最好途径。。。。。。。
2006-07-13 13:53



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-77884-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.054475 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved