首页 > 试题广场 >

在一个函数内定义的变量只能在本函数范围内有效。请问这句话的说

[单选题]
在一个函数内定义的变量只能在本函数范围内有效。请问这句话的说法是正确的吗?
  • 正确
  • 错误
推荐
A
定义变量可能有三种情况:
(1)在函数的开头定义;
(2)在函数内的复合语句内定义.;
(3)在函数的外部定义。
在一个函数内部定义的变量只在本函数范围内有效,只有在本函数内才能引用它们,在此函数以外是不能使用这些变量的。
复合语句内定义的变量只在本复合语句范围内有效,只有在本复合语句内才能引用它们。在该复合语句以外是不能使用这些变量的,(1)(2)两种情况的变量成为"局部变量"。
程序的编译单位是源程序文件,一个源文件可以包含一个或若干个函数。在函数内定义的变量是局部变量,而在函数之外定义的变量称为外部变量,外部变量是全局变量(也称全程变量)。全局变量可以为本文件中其他函数所共用,它的有效范围为从定义变量的位置开始到本源文件结束。
编辑于 2019-12-02 14:10:40 回复(0)
静态局部变量的地址,只要通过函数传出来了,在主函数还是可以修改那个静态局部变量啊
发表于 2020-03-30 10:16:18 回复(0)
加const和static修饰。。。
发表于 2019-12-25 21:34:19 回复(0)
A
在一个函数内部定义的变量称为“局部变量”。
局部变量保存在栈中,只有在所在函数被调用时才动态地为变量分配存储单元。

局部变量

  • 主函数中定义的变量也只能在主函数中使用,不能在其他函数中使用。
  • 允许在不同的函数中使用相同的变量名,他们代表不同变量,分配不同的存放单元,互不相干,不会发生   混淆。
  • 复合语句中定义的变量,只限于使用当前函数中,也是复合语句的局部变量,复合语句:就是用{}包含起来的语句块。
  • 形参变量、在函数体内定义的变量都是局部变量。实参给形参传值的过程也就是给局部变量赋值的过程。
发表于 2019-11-29 19:11:09 回复(0)
静态变量不是可以吗?
发表于 2020-05-17 23:03:51 回复(1)
什么叫有效???是范围还是生命周期???

发表于 2020-04-05 20:39:24 回复(0)