打印

C编程,这个想法能实现吗

[复制链接]
2145|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liuswallow|  楼主 | 2007-2-8 15:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
unsigned char char_list[]="中国人";
unsigned char tempd6d0[]={0x11,0xbb,0x99};
void main()
{
unsigned int i;
i=*char_list;


tempd6d0是汉字“中”的点阵,中的内码是D6D0
我想直接通过“中”直接把tempd6d0掉出来.VC可以这样做,不知道在GCC或Keil或WAVE中如何实现呢。
听说ICC可以,不知是不是真的,有人研究过它是如何实现的吗?我没有用过ICC

///////////////////////////////////////补注:
就是要建一个小字库
但是,要是建字库,我想到无非是两种方式,一个建是一个全汉字编码数组,按汉字编码访问数组,*the_dot_metric=temp[0xd6d0],这样占空间很大。。二是定义各个汉字的单独数组,调用时直接使用数组名,*the_dot_metric=tempd6d0。
而我现在想用汉字“中”的内码想办法直接取得(这样就不会出现多音字,程序也更加简单明了了)。
不知道大家看明白,我说的是要怎么做的吗,用过VC,VB的朋友可能更容易看明白。
、、、、
其实我的要求就是把“一个变量的内容转为变量名”。

相关帖子

沙发
mohanwei| | 2007-2-8 21:23 | 只看该作者

不是很明白你的意思……你是不是像做小字库?

如果是那样,你要先将汉字的内码映射到小字库里,很麻烦的。
一般是先将用到的汉字按照顺序生成一个小字库,用的时候直接调用(跟内码一点关系都没有了)。
想用内码,就得加上一个完整的字库了。

使用特权

评论回复
板凳
平常人| | 2007-2-8 22:23 | 只看该作者

只要你能想到的算法,C就能实现;没有做不到的,只有想不

使用特权

评论回复
地板
lixun00| | 2007-2-9 08:23 | 只看该作者

要内建字库

使用特权

评论回复
5
liuswallow|  楼主 | 2007-2-9 08:56 | 只看该作者

平常人,您好,我说得不太明了吗?

我就是想把变量的内容转为变量的名字。用了这么多年C,也不敢说对C有多精通,请指教了。
我觉得好像应该用Define语句,可是我对这个是最不通的了。

使用特权

评论回复
6
lishuanghua| | 2007-2-9 09:06 | 只看该作者

又想直接用汉字字符串,又不想建全汉字库,有一个办法

小字库按要用到的字的内码从小到大排列起来,在每个字点阵前面加上该字的内码,要调字库的时候按逐步逼近法去搜索字库。

使用特权

评论回复
7
liuswallow|  楼主 | 2007-2-9 10:11 | 只看该作者

不错,是一个折中的办法,谢谢

使用特权

评论回复
8
AIRWILL| | 2007-2-9 23:02 | 只看该作者

头大

keil C 不支持中文变量名, 否则, 可以用中文字当数组名了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

44

帖子

0

粉丝