局部变量和全局变量的使用容易混淆程序不运行问题!

2019-03-24 20:41发布

本人之前有碰到过这样的问题,比如一个按键多功能(m的值代表按的次数):
void time1()//子程序
{
uint m=0;
设置按键口输入
若按键按下
m++;
……
……
}

void main()
{
while(1)
{
time1();//调用子程序
}
}
上面只是简单的说明一下,别看对不对,其中变量uint m=0;若我放在子程序中不能运行,但放在头文件后面也就是开头就可以运行,是什么原因?

另外也有ADC的转换值变量我放在头文件后面不能运行,但放在main()主函数中就可以运行,刚好和上面相反,请大家说一下原因,谢谢! 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
ltbytyn
1楼-- · 2019-03-25 01:21
局部变量和全局变量的有效作用范围不同
我不是老鸟
2楼-- · 2019-03-25 01:52
yes right
gh131413
3楼-- · 2019-03-25 02:03
能详细些吗,THANKS
gh131413
4楼-- · 2019-03-25 07:38
gh131413
5楼-- · 2019-03-25 12:04
能说说我上面的例子问题出在哪就OK,谢谢……

一周热门 更多>