求助:C51 二维数组的调用

[复制链接]
 楼主| 石头记 发表于 2014-6-2 22:36 | 显示全部楼层 |阅读模式
本帖最后由 石头记 于 2014-6-2 22:53 编辑

主要功能:有一个显示屏要显示N个图片(N>10,每个图片64字节),显示哪个图片由变量选择。
char code pic_data[N][64]={
   {图片数据0},
   {图片数据1},
   {图片数据2},
    {图片数据N}};

如果这样调用:

      for (i=0;i++;i<10)
     {
      LCD_display(pic_data);
     delay1ms(1000);
     }

则编译器不报错,但运行后啥子都是不显示,连 delay1ms(1000)都被跳过了。
如果这样测试是可以正常显示的。

      LCD_display(pic_data[0]);
     delay1ms(1000);
      LCD_display(pic_data[1]);
     delay1ms(1000);
      LCD_display(pic_data[2]);
     delay1ms(1000);
为什么会这样?该如何调用二维数组?
以前没玩过C51,现在想练练,却发现杯具了。





 楼主| 石头记 发表于 2014-6-2 22:53 | 显示全部楼层
主要功能:有一个显示屏要显示N个图片(N>10,每个图片64字节),显示哪个图片由变量选择。
char code pic_data[N][64]={
   {图片数据0},
   {图片数据1},
   {图片数据2},
    {图片数据N}};

如果这样调用:

      for (i=0;i++;i<10)
     {
      LCD_display(pic_data[i]);
     delay1ms(1000);
     }

则编译器不报错,但运行后啥子都是不显示,连 delay1ms(1000)都被跳过了。
如果这样测试是可以正常显示的。

      LCD_display(pic_data[0]);
     delay1ms(1000);
      LCD_display(pic_data[1]);
     delay1ms(1000);
      LCD_display(pic_data[2]);
     delay1ms(1000);
为什么会这样?该如何调用二维数组?
以前没玩过C51,现在想练练,却发现杯具了。
原野之狼 发表于 2014-6-3 00:07 | 显示全部楼层
LCD_display(pic_data[i]);

评分

参与人数 1威望 +1 收起 理由
石头记 + 1 谢谢参与

查看全部评分

 楼主| 石头记 发表于 2014-6-3 00:52 | 显示全部楼层
原野之狼 发表于 2014-6-3 00:07
LCD_display(pic_data);

是的,我发贴时不知为什么【i】贴不上来,2楼已更改过来了。
还有就是char code pic_data[N][64]中,实际上是char code pic_data[12][64]
luofeng2g 发表于 2014-6-3 08:20 | 显示全部楼层
你的for循环,写反了,for(i=0;i<10;i++)

评分

参与人数 2威望 +5 收起 理由
石头记 + 3 很给力!
原野之狼 + 2 赞一个!

查看全部评分

ningling_21 发表于 2014-6-3 12:33 | 显示全部楼层
  1. for(i=0;i<N;i++)
  2. {
  3.    for(j=0;j<64j++)
  4.    {
  5.       LCD_display(pic_data[i][j]);
  6. }
  7. }

评分

参与人数 1威望 +1 收起 理由
石头记 + 1 谢谢参与

查看全部评分

 楼主| 石头记 发表于 2014-6-3 18:40 | 显示全部楼层
luofeng2g 发表于 2014-6-3 08:20
你的for循环,写反了,for(i=0;i

还真是的,一个低级的不能再低级的错误!
没读书就是没用。。。
小牧费 发表于 2014-6-3 19:46 | 显示全部楼层
我也纠结这个问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

85

帖子

0

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