(C语言)以下叙述中不正确的是A)一个变量的作用域开始位置完全取决于变量定义语句的位置B) 全局变量可以在函数以外的任何部位进行定义C) 局部变量的“生存期”只限于本次函数调用,
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/05 23:19:20
(C语言)以下叙述中不正确的是A)一个变量的作用域开始位置完全取决于变量定义语句的位置B) 全局变量可以在函数以外的任何部位进行定义C) 局部变量的“生存期”只限于本次函数调用,
(C语言)以下叙述中不正确的是
A)一个变量的作用域开始位置完全取决于变量定义语句的位置
B) 全局变量可以在函数以外的任何部位进行定义
C) 局部变量的“生存期”只限于本次函数调用,因此不可能将局部变量的运算结果保存至下一次调用
D)一个变量说明为static存储类是为了限制其它编译单位的引用
(C语言)以下叙述中不正确的是A)一个变量的作用域开始位置完全取决于变量定义语句的位置B) 全局变量可以在函数以外的任何部位进行定义C) 局部变量的“生存期”只限于本次函数调用,
A不正确.应该是取决于声明而不是定义的位置.声明引入一个名称,定义引入一个实体,作用域和名称相关,生存期和对象(对象属于一种实体,其它实体还有类型等)相关.
C明显不正确.理由同上,static修饰局部变量为静态存储类,在首次进入函数时初始化一次,之后进入函数时不初始化而保留在上一次离开函数的值.此外,tssuperszy 的说法不确切,应该是在作用域外“不可见”而不是“不可访问”(特别地,在C++中两者有严格区别).
D也是不正确的.理由如C选项的解释,使用static修饰局部变量不是为了限制其它编译单元的引用,而是为了在函数多次调用之间保存值.
====
[原创回答团]