明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2487|回复: 5

vs2005+Arx207中使用acutprintf函数出错

[复制链接]
发表于 2006-5-16 20:39:00 | 显示全部楼层 |阅读模式
求助??can't convert 参数1 const char[] to const AChar *
发表于 2006-5-16 21:10:00 | 显示全部楼层

要将acutPrintf ("")

变成acutPrintf (_T(""))就可以了

发表于 2006-5-17 09:40:00 | 显示全部楼层

或者你用 writemessage 试一下

 楼主| 发表于 2006-5-17 11:39:00 | 显示全部楼层

请问:为什么呀??

发表于 2006-5-17 18:51:00 | 显示全部楼层

Windows使用两种字符集ANSI和UNICODE,前者就是通常使用的单字节方式,但这种方式处理象中文这样的双字节字符不方便,容易出现半个汉字的情况。而后者是双字节方式,方便处理双字节字符。Windows NT的所有与字符有关的函数都提供两种方式的版本,而Windows 9x只支持ANSI方式。_T一般同字常数相关,如_T("Hello")。如果你编译一个程序为ANSI方式,_T实际不起任何作用。而如果编译一个程序为UNICODE方式,则编译器会把"Hello"字符串以UNICODE方式保存。_T和_L的区别在于,_L不管你是以什么方式编译,一律以以UNICODE方式保存。

实际上这个问题在VC++2005上才出现,VC++2003以前都不会有问题,都不用加_T(),你没发现VC2005的控件的名称可以是中文吗,以前的都不能是中文的,否则会认为是无效字符!其实VC2005还有很多地方都变了,你可以自己研究一下的!

 楼主| 发表于 2006-5-18 12:30:00 | 显示全部楼层

万分感谢

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 23:29 , Processed in 0.180303 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表