TI中文支持网
TI专业的中文技术问题搜集分享网站

变量的问题

在main.c里定义了一个变量A,然后在fun.c里用extern声明了这个变量,fun.c的一个函数fun24()在一个while循环下使用了变量A,在中断函数中,触发中断,则A加1,然后如果我在int main()里直接调用fun24()的话,液晶显示的A的数值在实时变化,但是如果不在int main()里直接调用fun24()而是先调用fun0(),再通过菜单调用fun24()(就是进入fun24()函数的写的界面)A的值就不会实时变化了,如果退出fun24的界面,再通过菜单进入,A的值会变化,但不是实时变化,就是保持一个值不变,不知道是什么原因了,我觉得逻辑上来看应该不会出现这样的问题呀?请求大家帮忙,谢谢。

Lina Lian:

tianm 21ic,

在变量定义的时候,加上variable就行了。O(∩_∩)O~,

volatile 告诉编译器i是随时可能发生变化的,每次使用它的时候直接从内存中读取,而不是从临时缓存变量中读取。且不会背优化掉。试试。

赞(0)
未经允许不得转载:TI中文支持网 » 变量的问题
分享到: 更多 (0)