C语言的变量问题

来源:百度知道 编辑:UC知道 时间:2024/05/10 07:31:32
全局变量和局部变量有什么不同,还有静态储存和动态储存,以及寄存器储存有什么不同啊 谢谢!

全局变量是说它的生存周期是全局的,就是说它从定义开始到程序结束都存在,被分配到内存的静态存储区,而局部变量是在动态存储区的,比如函数中的临时参数等。寄存器存储是指在定义变量地时候前边加上:register关键字,这样变量被存储在处理器的寄存器中,主要用来处理生存周期短,而且在生存周期内频繁使用的变量。
全局变量在编译的时候已经分配好内存,并且在静态存储区。而局部变量是在运行的时候分配内存的,并且是在动态存储区。动态存储区里的变量一旦生命周期结束就会收回它所占的空间。而静态存储区的变量会一直存在,直到程序退出。
建议先搞清楚变量的生存周期。一般的C/C++入门的书都有介绍

这些书上应该说得很清楚啊!为什么不去好好看书呢!
我把c学好,多看书是必不可少的!!

一楼说得比较清楚了

生命周期不同,使用的范围也不同。看一下c++primer就会很清楚了