00问答网
所有问题
简述静态局部变量和自动变量的区别,并举例说明 C语言的 急求答案
如题所述
举报该问题
推荐答案 推荐于2016-08-03
生命周期不同:
1、动态变量生命周期仅为函数执行时间周期,该函数调用结束,变量销毁;
2、静态变量生命周期延长到整个程序执行结束(不是该函数调用结束,是main函数结束),本次函数调用结束,变量不销毁,再次调用该函数 该变量保留上一次的值。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://00.wendadaohang.com/zd/DIInrZjjT.html
其他回答
第1个回答 2010-11-21
它们的共同点是,有效范围都局限在函数内;
不同的是,生存周期不一样,自动变量从进函数开始到退出函数,而静态变量从程序启动一直到结束。
另外,本质的不同是,自动变量在栈中,静态变量在程序的数据段中。
相似回答
C语言
中
自动变量
静态变量
寄存器变量 外部变量 有可比性吗?
区别
在哪...
答:
内部静态变量:
a.在局部变量前加上static就为内部静态变量 b.静态局部变量仍是局部变量,其作用域仍在定义它的函数范围内
,但它采用静态存贮分配(由编译程序在编译时分配,而一般的自动变量和函数形参均采用动态存贮分配,即在运行时分配空间),当函数执行完,返回调用点时,该变量并不撤销,再次调用时...
关于
c语言
auto
变量和
static
变量区别
答:
1、static变量存放在静态存储区,在程序整个运行期间都不释放;而auto变量存放在动态存储区
,随着生命周期的结束而立即释放。2、static变量只赋值一次,以后就不用赋值;而auto变量在函数每调用一次都要赋初值。3、如果用户不对static变量赋初值,则默认为0或'\0';而auto变量为不确定值。
c语言变量的
储存类别
及
各自的特点
答:
与auto类型(普通)局部变量相比, static局部变量有三点不同:1.
存储空间分配不同
auto类型分配在栈上, 属于动态存储类别, 占动态存储区空间, 函数调用结束后自动释放, 而static分配在静态存储区, 在程序整个运行期间都不释放. 两者之间的作用域相同, 但生存期不同.2. static局部变量在所处模块在初次...
static 定义的函数,怎么使用
答:
把局部变量改变为静态变量后是改变了它的存储方式,即改变了它的生存期
。把全局变量改变为静态变量后是改变了它的作用域,限制了它的使用范围。因此static
这个说明符在不同的地方所起的作用是不同的
。应予以注意。static定义变量的使用:一、静态局部变量:1、Static类内部变量同auto自动变量(即未加 ...
大家正在搜
全局静态变量和局部静态变量
局部变量和全局变量的区别
c语言局部变量和全局变量
静态变量和动态变量
举例说明什么是变量和变量值
c语言静态局部变量
局部变量和全局变量重名
静态局部变量的生存期
全局变量是静态变量吗
相关问题
C语言用静态局部变量来实现
C语言中自动变量是什么变量?它是动态变量的意思吗?怎么理解?
C语言静态局部变量和全局变量有什么区别,不都是在整个程序中都...
c++里面静态变量和动态变量,自动变量这些都有哪些个区别
c 程序中自动变量是什么意思,怎么用?
C语言程序设计例题求详细解释 静态局部变量值
求助,C语言问题,在线等答案,大家帮帮忙 简述‘C’与“C”...
C语言自动变量的一点问题