打印

TI MCU 分享 关于430疑惑

[复制链接]
2651|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qaqaqaqa|  楼主 | 2011-8-5 11:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
TI, MCU, se, DM, ev
本帖最后由 qaqaqaqa 于 2011-8-8 08:49 编辑

include <MSP430x14x.h>

void main (void)

{

int i;

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

int l=1;

while(1)

{

switch (l)

{

case 1:i=array[l];break;

case 2:i=array[l];break;

default: break;

}

l++;

}


}

总是得不到想要的i的值

我不知道错在哪里

相关帖子

沙发
spark周| | 2011-8-5 11:23 | 只看该作者
。。。

使用特权

评论回复
板凳
wanggong2011| | 2011-8-5 13:26 | 只看该作者
本帖最后由 wanggong2011 于 2011-8-5 13:27 编辑

由于i只被赋值而没有被使用过,
所以很可能是编译器给优化没了!
如果有一些用到i的语句,就会好的。

使用特权

评论回复
地板
FengHeng| | 2011-8-5 17:02 | 只看该作者
你的变量一直在加,没有归零。很危险。

使用特权

评论回复
5
永远的不知| | 2011-8-5 17:24 | 只看该作者
1# qaqaqaqa

您想实现什么功能?
把编译器的优化等级设为最低试试。

使用特权

评论回复
6
永远的不知| | 2011-8-5 17:26 | 只看该作者
4# FengHeng

非常赞同4楼fengheng,写程序要严谨。

使用特权

评论回复
7
shimx| | 2011-8-5 18:14 | 只看该作者
老手一眼就看出来了

使用特权

评论回复
8
-自己人| | 2011-8-6 22:38 | 只看该作者
编译器的优化等级设置为最低试试

使用特权

评论回复
9
zhmm1213| | 2011-8-6 23:15 | 只看该作者
编译器的优化等级?
优化是什么意思?或是干嘛使得?

使用特权

评论回复
10
永远的不知| | 2011-8-7 09:43 | 只看该作者
对于C语言程序,编译器需要把C语言翻译成汇编语言;
一般来说优化等级越高,翻译后生成的代码数量越少,效率越高。

使用特权

评论回复
11
msp430ing| | 2011-8-7 15:37 | 只看该作者
楼上正解

使用特权

评论回复
12
yirongfu| | 2011-8-8 11:03 | 只看该作者
l大于4之后比较危险,为何不限定array的长度?
虽然定义的时候没有指定数组的长度,但应该编译器有个默认的处理方法,这个你仿真的时候就没有报错吗?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

97

帖子

1

粉丝