6896|11

72

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

UltraEdit里unicode编码格式的代码用arm-elf-gcc编译的问题 [复制链接]

问题比较复杂,只好从头说起。
    我们希望在LCD上能显示日文,韩文字符,所以要用unicode编码,我们现用的开发工具是MDK(Keil3)+arm-elf-gcc,但MDK不支持unicode编码,还好我们找到好几款能编辑unicode编码的编辑器,我们打算选用UltraEdit。
    UltraEdit中文件的保存时与unicode相关的格式有7种(UTF-8/UTF-16/UTF-8无BOM/UTF-16无BOM/UTF-16-Big Endian/UTF-16-Big Endian-无BOM/Unicode-ASCII Escaped)。
    分三个方面来对比这7中格式的不同:
    1、日文、韩文的输入
    除Unicode-ASCII Escaped格式保存的时候输入的日文韩文字符都显示为其unicode编码值,其它6种格式都能正常显示输入的字符。
    2、切换16进制编辑模式查看
    切换16进制编辑模式,UTF-8及其相关格式编码保存的文件中的英文字符显示为其ASCII码+00,和UTF-16及相关格式保存时,没什么区别,UTF-16也是加一个00。(不讨论文件开头的FF FE)。
    除Unicode - ASCII Escaped格式时日文、韩文在16进制下显示为字符unicode码值对应的ASCII码值外,其它格式下都显示为字符unicode编码值(而非UTF-8或UTF-16编码值)。
    3、用arm-elf-gcc编译这7种格式的文件
    UTF-8格式文件保文件头有不能识别的字符,估计是BOM的问题(但这个BOM应该不是指文件头的FF FE,因为UTF-8无BOM格式保存的时候也有这个FF FE,不知道这个BOM怎样才能看到),UTF-16及其相关格式的文件都报“null
character(s) ignored”的警告,估计是UTF-16双字节的问题,只有UTF-8格式的文件能正常通过编译。据说gcc约定只能处理UTF-8的编码。奇怪的是Unicode-ASCII Escaped格式文件中的“\u”符号会引起报错“universal
character names are only valid in C++ and C99”,这个符号招惹谁了??
    综上所述,问题罗列如下:
    1、除Unicode-ASCII Escaped格式是什么意思,为何输入的日文/韩文字符都直接成了其码值转换了?“\u”符号招惹谁了,C++和C99不识别?看来这个格式是不适合了。
    2、UTF-8/UTF-16中的BOM是什么,在哪儿,为何在16进制编辑模式下都看不见?FF FE算什么?16进制编辑的时候,这两个模式的文件没什么区别,UTF-8是ASCII字符加00,UTF-16也是加一个00,但在用gcc编译的时候又结果不一样,那他们的不同体现在什么地方,怎样能看到?
    3、UTF-8和UTF-16及其相关格式保存的文件在16进制编辑模式下看到的日文/韩文字符都是显示的其Unicode编码值(两byte),而不是UTF-8编码值,这是为何??
    4、假设上问没有问题,那么UTF-8无BOM这种格式的文件是否就是我想要找的,也就是:输入日文/韩文,在内存中实际保存的是其Unicode编码,然后我可以以该编码值来查字符点阵表,来显示了?
    5、我们这种方式可行吗:UltraEdit下编辑文件,以UTF-8无BOM格式保存,用arm-elf-gcc/armasm编译,armlink连接,然后fromelf产生可执行文件?
    第一次处理这方面的问题,希望各位同仁多多指点,感激不尽!!
此帖出自ARM技术论坛

最新回复

怪异,为何前两楼的回复都被斑竹删了。 都说啥了?  详情 回复 发表于 2008-12-1 16:04
点赞 关注
 

回复
举报

76

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
好复杂哦,看得我都头晕晕了
此帖出自ARM技术论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
我也晕,不过更晕的,没一个人给点意见的。
此帖出自ARM技术论坛
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

4
 
没搞过这么高科技的

旁观学习
此帖出自ARM技术论坛
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

5
 
5应该可以,我们团队有人在UltraEdit里编辑过存储起单元
此帖出自ARM技术论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

6
 
谢谢楼上及楼上的楼上的回复.

其实前面那么多问号都是困惑而已,而我们的事能不能干成就一个问题,就是问题5:以UTF-8无BOM格式保存的源文件是否就是我想要的.
此帖出自ARM技术论坛
 
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

7
 
1.奇怪的是Unicode-ASCII Escaped格式文件中的“\u”符号会引起报错“universal
character names are only valid in C++ and C99”,这个符号招惹谁了??

gcc不认哦

看这里:
http://gcc.gnu.org/ml/gcc-patches/2000-03/msg00248.html
此帖出自ARM技术论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

8
 
谢谢楼上.

不知道什么编辑器能保存成unicode的编码格式,而非UTF.
此帖出自ARM技术论坛
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

9
 
FF FE这个应该是Unicode编码的标志,就是说:一个文档(如.xml)若用UE打开看到最开头两个字节为FF FE,说明文档是采用Unicode编码的,BOM格式没看到过,其他问题,感觉看的不是很明白
此帖出自ARM技术论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

10
 
Unicode-ASCII Escaped 这种格式gcc不认?那是c标准的格式。

保存成unicode不难吧,用vc做调用一个函数multibytowidechar就行了。
此帖出自ARM技术论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

11
 
[抗议]对硬件/嵌入开发的某些版主武断,简单,粗暴的执法方式表示严重的抗议!  
http://topic.eeworld.net/u/20081119/11/bda8bc5d-98d0-45ee-a1c1-86209d7f121d.html

各位再看看我刚才那个在硬件/嵌入开发版贴子已经被版主删除了,他是担心什么,还没有一会就直接删除,而且也没个通知说明一下,各位兄弟这里的版主是正直,但是做事的方式有欠妥,直得商榷,我不是说打广告对,我是说他直接封我ID,之前不说一下,之后不通知,感觉很郁闷!如果他提醒一下我一定停止发,他不说我以为这个可以发了,因为之前我是有准备哪个版主提醒一下我很快就不发,所以我才对他不提醒很气愤!


对版主处理问题武断,简单,粗暴的方式表示严重的抗议! 你看你只有也只能删除一下留言,封封几个不听话的ID,还能做点别的不?

此版主跟城管有得一比!

另外各位看看下面这两个帖子!

http://topic.eeworld.net/u/20081118/15/5ade4cdf-3a30-4481-be9d-1b97b88cde48.html

http://topic.eeworld.net/u/20081118/08/cf7d0af3-35cc-4fb7-9dc2-4567041b89e5.html?seed=1367941736


我开一贴他就删除一贴,他们怕什么,我只有以下两个要求:
第一,你把我的那个ID,解封了,
第二,我可以开贴道歉,以后不发广告贴,但是是哪位版主删除的,站出来说一下,然后就此武断,简单,粗暴的方式执法的行为进行道歉!

另外我那个ID在此已经四年了,从来没有任何不良记录,这次直接封,我表示严重的抗议,希望大版版主能就此事作个说明!

此帖出自ARM技术论坛
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

12
 
怪异,为何前两楼的回复都被斑竹删了。

都说啥了?
此帖出自ARM技术论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表