w71057178 发表于 2012-11-20 22:17:07

【大神这边】关于LPC2138使用中,二维数组存储的问题

用IARARM编写的关于LPC2138与LCD12864的一个程序,用Protues仿真了一下,发现屏幕显示的汉字间距不对,通查程序后发现问题出在取字模上。
我的字模(12*12)是用一个二维数组定义的,比如 const__REG8 hanzi,一个一维数组为一个字的字模。
我用一个指针 *DateADD指向 hanzi,地址偏移23次取出字模数据。
当偏移到24次时,我原认为应该是指向第二个汉字字模的第一个 __REG8 字模数据,实际上取出来的是 一个无意义数据。
查看 (__REG32)&hanzi 与 (__REG32)&hanzi 的差值 是32。
也就是说 第一组一维数组实际占用空间是 32个字节。 也许中间空出来的空间是可以用的,但为什么hanzi与hanzi的存储空间不是连续的呢?

w71057178 发表于 2012-11-20 22:45:36

没有人吗?这个问题。。。。。

wildone 发表于 2012-11-21 14:32:29

__REG8 看你定义的数据类型啊,如果是int型,那每个数据所占空间是肯定是32,即使数据不满32位!
页: [1]
查看完整版本: 【大神这边】关于LPC2138使用中,二维数组存储的问题