Brew中的字符串

sleeping_dx 2009-05-05 06:51:20
请问Brew中的字符串如何定义啊, 难道只能: AECHAR szChr[] = {'H','e','l','l','o','\0'};
为什么我有的时候: AEECHAR* a = "HelloWorld";就可以,而且显示正常. 有的时候这样定义就不行, 报错.
62 error C2440: “初始化”: 无法从“const wchar_t [9]”转换为“AECHAR *” 到底哪里设置的不对呢.实在找不到了.
这个需要自己封装吗? 封装一个String类?
...全文
1663 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
氘火 2009-09-10
  • 打赏
  • 举报
回复
AECHAR* a = L"中国"; 模拟器没问题,真机上是乱码
vliuyong1 2009-07-22
  • 打赏
  • 举报
回复
加L,好像是一种宽字符集
sleeping_dx 2009-05-08
  • 打赏
  • 举报
回复
请问楼上的是什么意思呢, 我怎么没有看懂. 能够讲的详细些吗?
发现心流 2009-05-07
  • 打赏
  • 举报
回复
赞楼主的 AECHAR* a = (AECHAR*)L"HelloWorld";
lint都消掉了
sleeping_dx 2009-05-06
  • 打赏
  • 举报
回复
我用VC6.0这样写就没有问题. AECHAR* a = "Hello";加L时宽字符集啊. 这个问题不大. 但是同样的代码放到VC2005下就不能通过, 编译报错, 就是上面那个错误, 可能是vc2005比较严格, 所以只能这样写了: AECHAR* a = (AECHAR*)L"HelloWorld";
SUNWEI06292000 2009-05-06
  • 打赏
  • 举报
回复
通常報“无法从‘const wchar_t [9]’转换为‘AECHAR *’” 的錯誤是因為你的代碼中有其他地方的錯誤
AEECHAR* a = "HelloWorld";這種寫法雖然不規范,但是絕大多數情況下編譯會通過,并能正常執行
发现心流 2009-05-06
  • 打赏
  • 举报
回复
AECHAR* a = L"HelloWorld";

char* a = "HelloWorld";
hhygcy 2009-05-05
  • 打赏
  • 举报
回复
这里的AECHAR是宽字符的,编码方式是unicode.你当然也可以自己封装一个String的类用来维护他
但是就像楼上说的,大部分情况下,你都可以通过系统接口从资源里面load字符串 所以不封装问题也不大
你说的AEECHAR* a = "HelloWorld";是不能通过编译的
我怀疑你是char* a = "HelloWorld"??
  • 打赏
  • 举报
回复
对于AECHAR,建议都从资源文件中读取,这样修改起来是不用该逻辑的。
sleeping_dx 2009-05-05
  • 打赏
  • 举报
回复
打错字了, 是"AECHAR", 不是"AEECHAR"

2,854

社区成员

发帖
与我相关
我的任务
社区描述
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
人工智能物联网机器学习 技术论坛(原bbs) 北京·东城区
社区管理员
  • csdnsqst0050
  • chipseeker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧