[DSP编程] 数组调用的问题

[复制链接]
 楼主| simon0000 发表于 2013-9-22 15:09 | 显示全部楼层 |阅读模式
遇到个奇怪的问题,

定义了一个数组
int TAB_test[5]={1,2,3,4,5};

test=TAB_test[1];
照理说test值应该为2,但程序跑起来加到watch窗口里看test值总是0,好像没调用这个数组,不知道为什么?
求大侠帮忙,谢谢了。
zhangmangui 发表于 2013-9-22 23:52 | 显示全部楼层
你把TAB_test数组的个数5改为6试试
yangmiao0223 发表于 2013-9-23 09:21 | 显示全部楼层
弱弱问一句  运行到那个语句没  
你打断点看   排除是其他地方修改了test值
aresc 发表于 2013-9-23 21:26 | 显示全部楼层
是不是编译器优化掉这段没用的代码?用volatile int 定义test变量试试.
 楼主| simon0000 发表于 2013-9-24 09:26 | 显示全部楼层
zhangmangui 发表于 2013-9-22 23:52
你把TAB_test数组的个数5改为6试试

试过了,不行,

用const int 也是不行,我还发现好想定义的数组没有用,在watch里看数组的值都是0,把定义行放在main()循环外面也不行,
 楼主| simon0000 发表于 2013-9-24 09:27 | 显示全部楼层
aresc 发表于 2013-9-23 21:26
是不是编译器优化掉这段没用的代码?用volatile int 定义test变量试试.

试了不行
zhangmangui 发表于 2013-9-24 09:40 | 显示全部楼层
simon0000 发表于 2013-9-24 09:26
试过了,不行,

用const int 也是不行,我还发现好想定义的数组没有用,在watch里看数组的值都是0,把定 ...

你的test怎么定义的   watch只能查看变量   并且需要你右击refresh
 楼主| simon0000 发表于 2013-9-24 09:51 | 显示全部楼层
本帖最后由 simon0000 于 2013-9-24 09:53 编辑
zhangmangui 发表于 2013-9-24 09:40
你的test怎么定义的   watch只能查看变量   并且需要你右击refresh

定义的const 数组,然后数组成员值赋给变量test

const int TAB_test[5]={1,2,3,4,5};

后面赋值给变量test,
int test;

test=TAB_test[1];

发现定义的数组好像没有用,数组的成员值是0
zhangmangui 发表于 2013-9-24 10:15 | 显示全部楼层
simon0000 发表于 2013-9-24 09:51
定义的const 数组,然后数组成员值赋给变量test

const int TAB_test[5]={1,2,3,4,5};

TAB_test的值不能再重新赋了  但是可以赋给test的啊  
不懂了  
 楼主| simon0000 发表于 2013-9-24 10:18 | 显示全部楼层
zhangmangui 发表于 2013-9-24 10:15
TAB_test的值不能再重新赋了  但是可以赋给test的啊  
不懂了

我的QQ 70918248,麻烦加下,请教这个问题,谢谢了
zhangmangui 发表于 2013-9-24 13:47 | 显示全部楼层
simon0000 发表于 2013-9-24 10:18
我的QQ 70918248,麻烦加下,请教这个问题,谢谢了

下班之后吧
 楼主| simon0000 发表于 2013-9-27 16:17 | 显示全部楼层
感谢各位帮忙
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

37

帖子

1

粉丝
快速回复 返回顶部 返回列表