通常,函数中定义局部变量在函数作用域结束时消失。再次调用此函数时,会重新创建变量的存储空间,其值会被重新初始化。如想使局部变量的值在程序的整个生命期里仍然存在,可以定义函数的局部变量为静态变量(),并给它一个初始化。初始化只在函数第一次调用时执行,函数调用之间变量的值保持不变。这就是所谓的静态局部变量,具有局部作用域,只被初始化一次,自从第一次被初始化直到程序运行结束都一直存在,它和全局变量的区别
- · 有7位网友选择 错,占比77.78%
- · 有2位网友选择 对,占比22.22%
(A)主函数中定义的变量是全局变量,非主函数定义的变量是局部变量
(B)静态变量和外部变量的作用域是整个程序
(C)静态变量具有永久生存期,动态变量具有动态生存期
(D)外部变量既可以多次定义,也可以多次声明
A、变量的作用域决定了变量可以被访问的范围,而变量的存储类型决定了变量的生存期。
B、静态变量和全局变量都是在静态存储区中分配内存的,而自动变量是在动态存储区中分配内存的。
C、用extern声明变量为外部变量的时候,编译器是对其分配内存的。
D、静态局部变量和静态全局变量的生存期是相同的,但二者的作用域是不同的,而静态局部变量和自动变量的作用域都是局部的,但二者的生存期是不同的。
A、static类型全局变量,可以被其他文件中语句访问。
B、任何存储类的变量在未赋初值时,其值都是不确定的。
C、同一函数内的static类型局部变量比auto类型的局部变量的作用域大。
D、同一函数内的static类型局部变量比auto类型的局部变量的生存期长。
A、在一个函数中定义的静态局部变量可以被另一函数调用
B、数值型静态局部变量的初值默认为0
C、静态局部变量是在编译时赋初值的,故它只被赋值一次
D、静态局部变量在整个程序运行期间都不释放
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!