编译器编译字符串中邪了?

[复制链接]
3150|10
 楼主| yuntian 发表于 2008-3-12 21:12 | 显示全部楼层 |阅读模式
先定义一个字符串,后面还有好多没一一列出,编译后居然在第110个下标处变成PORTBbits.RB5字符了,想了好多办法没搞定,倒塌了.<br /><br />const&nbsp;rom&nbsp;uchar&nbsp;test_code[]=<br />{&quot;0F&nbsp;BF&nbsp;07&nbsp;FC&nbsp;07&nbsp;FC&nbsp;78&nbsp;FF&nbsp;77&nbsp;FF&nbsp;76&nbsp;FF&nbsp;75&nbsp;FF&nbsp;74&nbsp;FF&nbsp;73&nbsp;FF&nbsp;<br />08&nbsp;08&nbsp;3F&nbsp;F7&nbsp;3F&nbsp;F7&nbsp;49&nbsp;FF&nbsp;48&nbsp;FF&nbsp;47&nbsp;FF&nbsp;46&nbsp;FF&nbsp;45&nbsp;FF&nbsp;44&nbsp;FF&nbsp;&nbsp;<br />0E&nbsp;FF&nbsp;2F&nbsp;FF&nbsp;2F&nbsp;FF&nbsp;72&nbsp;FF&nbsp;71&nbsp;FF&nbsp;70&nbsp;FF&nbsp;6F&nbsp;FF&nbsp;6E&nbsp;FF&nbsp;6D&nbsp;FF&nbsp;&nbsp;<br />08&nbsp;08&nbsp;1F&nbsp;FF&nbsp;1F&nbsp;FF&nbsp;43&nbsp;FF&nbsp;42&nbsp;FF&nbsp;41&nbsp;FF&nbsp;40&nbsp;FF&nbsp;5F&nbsp;F8&nbsp;5E&nbsp;FF&nbsp;&nbsp;&nbsp;<br />0F&nbsp;BE&nbsp;3F&nbsp;FF&nbsp;3F&nbsp;FF&nbsp;6C&nbsp;FF&nbsp;6B&nbsp;FF&nbsp;6A&nbsp;FF&nbsp;69&nbsp;FF&nbsp;68&nbsp;FF&nbsp;67&nbsp;FF&nbsp;&nbsp;<br /><br />08&nbsp;08&nbsp;07&nbsp;FC&nbsp;07&nbsp;FC&nbsp;5D&nbsp;FF&nbsp;5C&nbsp;FF&nbsp;5B&nbsp;FF&nbsp;5A&nbsp;FF&nbsp;59&nbsp;FF&nbsp;58&nbsp;FF&nbsp;<br />0D&nbsp;FF&nbsp;3F&nbsp;FF&nbsp;3F&nbsp;FF&nbsp;66&nbsp;FF&nbsp;65&nbsp;FF&nbsp;64&nbsp;FF&nbsp;63&nbsp;FF&nbsp;62&nbsp;FF&nbsp;61&nbsp;FF&nbsp;<br />08&nbsp;08&nbsp;2F&nbsp;FF&nbsp;2F&nbsp;FF&nbsp;57&nbsp;FF&nbsp;56&nbsp;FF&nbsp;55&nbsp;FF&nbsp;54&nbsp;FF&nbsp;53&nbsp;FF&nbsp;52&nbsp;FF&nbsp;<br />0F&nbsp;BE&nbsp;1F&nbsp;FF&nbsp;1F&nbsp;FF&nbsp;60&nbsp;FF&nbsp;7F&nbsp;FF&nbsp;7E&nbsp;FF&nbsp;7D&nbsp;FF&nbsp;7C&nbsp;FF&nbsp;7B&nbsp;FF&nbsp;<br /><br />08&nbsp;08&nbsp;07&nbsp;FC&nbsp;07&nbsp;FC&nbsp;51&nbsp;FF&nbsp;50&nbsp;FF&nbsp;4F&nbsp;F1&nbsp;4E&nbsp;FF&nbsp;4D&nbsp;FF&nbsp;4C&nbsp;FF&nbsp;<br />0C&nbsp;FF&nbsp;3F&nbsp;FF&nbsp;3F&nbsp;FF&nbsp;7A&nbsp;FF&nbsp;79&nbsp;FF&nbsp;78&nbsp;FF&nbsp;77&nbsp;FF&nbsp;76&nbsp;FF&nbsp;75&nbsp;FF&nbsp;<br />08&nbsp;08&nbsp;2F&nbsp;FF&nbsp;2F&nbsp;FF&nbsp;4B&nbsp;FF&nbsp;4A&nbsp;FF&nbsp;49&nbsp;FF&nbsp;48&nbsp;FF&nbsp;47&nbsp;FF&nbsp;46&nbsp;FF&nbsp;<br />0F&nbsp;BE&nbsp;1F&nbsp;FF&nbsp;1F&nbsp;FF&nbsp;74&nbsp;FF&nbsp;73&nbsp;FF&nbsp;72&nbsp;FF&nbsp;71&nbsp;FF&nbsp;70&nbsp;FF&nbsp;6F&nbsp;FF&nbsp;<br /><br />08&nbsp;08&nbsp;07&nbsp;FC&nbsp;07&nbsp;FC&nbsp;45&nbsp;FF&nbsp;44&nbsp;FF&nbsp;43&nbsp;FF&nbsp;42&nbsp;FF&nbsp;41&nbsp;FF&nbsp;40&nbsp;FF&nbsp;<br />0B&nbsp;FF&nbsp;3F&nbsp;FF&nbsp;3F&nbsp;FF&nbsp;6E&nbsp;FF&nbsp;6D&nbsp;FF&nbsp;6C&nbsp;FF&nbsp;6B&nbsp;FF&nbsp;6A&nbsp;FF&nbsp;69&nbsp;FF&nbsp;<br />08&nbsp;08&nbsp;2F&nbsp;FF&nbsp;2F&nbsp;FF&nbsp;5F&nbsp;F8&nbsp;5E&nbsp;FF&nbsp;5D&nbsp;FF&nbsp;5C&nbsp;FF&nbsp;5B&nbsp;FF&nbsp;5A&nbsp;FF&nbsp;<br />0F&nbsp;BE&nbsp;1F&nbsp;FF&nbsp;1F&nbsp;FF&nbsp;68&nbsp;FF&nbsp;67&nbsp;FF&nbsp;66&nbsp;FF&nbsp;65&nbsp;FF&nbsp;64&nbsp;FF&nbsp;63&nbsp;FF&nbsp;<br /><br />08&nbsp;08&nbsp;07&nbsp;FC&nbsp;07&nbsp;FC&nbsp;59&nbsp;FF&nbsp;58&nbsp;FF&nbsp;57&nbsp;FF&nbsp;56&nbsp;FF&nbsp;55&nbsp;FF&nbsp;54&nbsp;FF&nbsp;<br />0A&nbsp;FF&nbsp;3F&nbsp;FF&nbsp;3F&nbsp;FF&nbsp;62&nbsp;FF&nbsp;61&nbsp;FF&nbsp;60&nbsp;FF&nbsp;7F&nbsp;FF&nbsp;7E&nbsp;FF&nbsp;7D&nbsp;FF&nbsp;<br />08&nbsp;08&nbsp;2F&nbsp;FF&nbsp;2F&nbsp;FF&nbsp;53&nbsp;FF&nbsp;52&nbsp;FF&nbsp;51&nbsp;FF&nbsp;50&nbsp;FF&nbsp;4F&nbsp;F1&nbsp;4E&nbsp;FF&nbsp;<br />0F&nbsp;BE&nbsp;1F&nbsp;FF&nbsp;1F&nbsp;FF&nbsp;7C&nbsp;FF&nbsp;7B&nbsp;FF&nbsp;7A&nbsp;FF&nbsp;79&nbsp;FF&nbsp;78&nbsp;FF&nbsp;77&nbsp;FF&nbsp;
 楼主| yuntian 发表于 2008-3-12 21:15 | 显示全部楼层

用的C18编译器

没招了,哪位解救下.
su_mj000 发表于 2008-3-13 02:46 | 显示全部楼层

你的coding方法有问题。

应该改为:<br /><br />const&nbsp;rom&nbsp;uchar&nbsp;test_code[]=<br />{0x0F,0xBF,0x07,0xFC,...<br />0x08,&nbsp;0x08,&nbsp;0x3F,&nbsp;0xF7,&nbsp;...<br /><br />看上去这是个点阵图。
su_mj000 发表于 2008-3-13 02:58 | 显示全部楼层

如果要使用字符串,

则字符串按理不能跨行。
 楼主| yuntian 发表于 2008-3-13 08:36 | 显示全部楼层

楼上

改成0X那就麻烦大了,大片的数据都是字符ASSCLL码的,再试不跨行看看,不过每个字符都加一个&quot;&quot;也头大呀,数据有好几百行
 楼主| yuntian 发表于 2008-3-13 10:57 | 显示全部楼层

用笨办法

估计是字符串超长,只能每一行都加&quot;&quot;了.
xwj 发表于 2008-3-13 11:06 | 显示全部楼层

很奇怪的设计,明明是十六进制数据,为什么要用字符串?

多浪费空间啊,用起来还要另外转换...<br /><br />改成0X那没什么麻烦的,<br />很简单啊,把空格替换成,0x即可,换行也同样处理
 楼主| yuntian 发表于 2008-3-15 08:44 | 显示全部楼层

回楼上

不奇怪,因为我的大量数据是不确定的,是用串口收的字符码,没办法转成16进制的,有好几百K,我只是用其中的一部分不停的测试.这不是产品,是一个测试机.
su_mj000 发表于 2008-3-18 23:40 | 显示全部楼层

无论如何,字符串不能分行。

  
兰天白云 发表于 2008-3-20 18:13 | 显示全部楼层

把这么多数据敲进去不也累死?

应该还有其他方法
computer00 发表于 2008-3-20 18:38 | 显示全部楼层

自己写个小程序转换吧,自动产生代码就行了

这样搞多浪费空间呀
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

178

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部