c语言中什么是静态变量,什么是动态变量?

如题所述

静态变量在他的作用域里一直存在,而动态变量是在程序执行过程中建立,随函数的调用需要动态的分配存储空间,调用结束释放掉的。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-01
静态的大小不能改变,动态可以。静态直接声明,动态需要new和delete
第2个回答  推荐于2017-09-06
全局变量声明之前加上static,就是静态全局变量。全局变量和静态全局变量都是静态存储的;在存储上无区别。区别在于他们的作用域;全局变量的作用域是整个源程序,当源程序有多个源文件组成时,全局变量在各个源程序文件都是有效的;而静态全局变量怎被限制了作用域,只在定义该变量的源文件内有用在同一程序的其他源文件不能使用!
还有静态全局变量只初始化一次,防止在其他源文件调用!而全局变量可以再其他源文件初始化!!
第3个回答  推荐于2017-10-09
全局变量声明之前加上static,就是静态全局变量。全局变量和静态全局变量都是静态存储的;在存储上无区别。区别在于他们的作用域;全局变量的作用域是整个源程序,当源程序有多个源文件组成时,全局变量在各个源程序文件都是有效的;而静态全局变量怎被限制了作用域,只在定义该变量的源文件内有用在同一程序的其他源文件不能使用!
还有静态全局变量只初始化一次,防止在其他源文件调用!而全局变量可以再其他源文件初始化!!本回答被提问者和网友采纳
相似回答