yarak_ma 发表于 2007-11-21 10:10:13

[求助]请教马老师cvavr数组下标不能用变量的问题

我在数组里用 disp_buf寻址时,会发出如下警告:
    overflow is possible in 8bit addition,casting may be required;
于是我用指针形式(*(*(disp_buf+3)+D_x+dx)) = font6x12;
可编译根本通不过,报错 invalid indirection.请问有没有办法解决?
      (*(*(disp_buf+3)+D_x+dx)) = font6x12;
      //disp_buf = font6x12;

machao 发表于 2007-11-22 17:19:42

我在数组里用 disp_buf寻址时,会发出如下警告:
    overflow is possible in 8bit addition,casting may be required;

这只是警告,不是错误.只要你自己心中有数,就能使用.它提醒你2点:

1. 的值不要超过数组定义的值
2.的可能超过255.通常D_x和dx都使用char型变量,2个相加,可能会超出255.
3.CVAVR中数组下标肯定可以使用变量,但使用带算法的形式,会给出一个警告,提醒你注意.
页: [1]
查看完整版本: [求助]请教马老师cvavr数组下标不能用变量的问题