单片机C语言中的全局变量可以被修改吗
比如先定义了一个全局变量inta=10;然后如果在主函数里或是其他自定义函数里把a的值改变,比如是a=a+1;那么如果在退出了这个函数后,a的值会变回原来的10吗,我意思...
比如先定义了一个全局变量 int a=10; 然后如果在主函数里或是其他自定义函数里把a的值改变,比如是a=a+1; 那么如果在退出了这个函数后,a的值会变回原来的10吗,我意思是a值是会被永久性改变还是临时的改变?
展开
5个回答
展开全部
定义了全局变量就表示在这个函数a都为10.如果在主函数里或是其他自定义函数把a的值改变,则a变为了局部变量,则主函数里或是其他自定义函数中的a会覆盖掉全局变量中的a,也就是说在主函数里或是其他自定义函数中的a只是临时变量,当函数运行完,这个函数中的a寿命就终止了。当退出了这个函数后,a的值恢复到全局变量的10,全局变量是伴随着整个程序的。最好还是自己写程序实验,这样印象深刻。
更多追问追答
追问
如果是这样,那我想要把一个变量,可以任意修改,改后不会恢复,全局都通用,可 以吗?有这种变量吗?
追答
那就是全局变量吧~改变全局变量的值就可以了。如果不想的话,还可以用指针,指向你想要的那个值得地方就ok了。
展开全部
10只是初始值,每个函数都可以改变它的值。
全局变量就是整个程序里可以用的,既然是变量就是可以改变的,并且是改变后的值不会恢复到初始值。
全局变量就是整个程序里可以用的,既然是变量就是可以改变的,并且是改变后的值不会恢复到初始值。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
既然是全局变量,最后以后被修改成10,只要不退出程序,这个全局变量就是10
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
命名时赋予的值是初始化的值,后面的程序可以对其更改操作。且更改值在退出子程序后依然保留下来
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
全局变量就是在函数的范围内值都是不会变的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询