数组越界问题

[复制链接]
 楼主| sjc_sugar 发表于 2011-12-30 16:24 | 显示全部楼层 |阅读模式
定义一个接受数组:INT8U Recv[1]={0};

void Recv_ISR(void) interrupt 4
{   
if(RI==1)
{
   Recv[Lenth++]=SBUF;
   RI=0;
}   
}

发现接受的16个数据在LED上显示正常,感到很困惑,这个不是数组越界了?
ayb_ice 发表于 2011-12-30 16:29 | 显示全部楼层
生病就一定死吗
hotpower 发表于 2011-12-30 17:09 | 显示全部楼层
length&=15
Ryanhsiung 发表于 2011-12-30 17:34 | 显示全部楼层
越界,就越界 又不定会引起复位等故障!
  只是操作到了不该操作的变量
 楼主| sjc_sugar 发表于 2011-12-30 17:56 | 显示全部楼层
2# ayb_ice
我想请教下,越界后的数据是跟在数组后存储还是随机存储?
西门看雪 发表于 2011-12-30 19:30 | 显示全部楼层
2# ayb_ice  
我想请教下,越界后的数据是跟在数组后存储还是随机存储?
sjc_sugar 发表于 2011-12-30 17:56


跟在数组后存储;紧接着数组后边的内存空间。
ups888 发表于 2011-12-30 19:42 | 显示全部楼层
做通讯程序把数据存到缓存都要做越界判断。做产品和做DEMO实现功能的差别就在这些细节的地方
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

70

帖子

1

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

0

主题

70

帖子

1

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