c - 理解全局变量的概念

标签 c

<分区>

如果我们有一个全局定义的变量“x”和一个函数内的另一个同名变量“x”。当我们打印“x”的值时,为什么我们总是得到函数内部赋值的值?有什么方法可以打印全局变量值。

int x=8;
void testCode()
{
    int x=2;
    printf("%d",x); //prints 2
}

最佳答案

在其他语言中,是的。在 C 中,无法在同一范围内访问全局。有一种方法可以声明嵌套作用域(请参阅其他答案),这将使您能够访问非静态全局变量,但不建议这样做 - 不要这样做。如果要获取全局变量,不要用同名局部变量隐藏。

关于c - 理解全局变量的概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18858552/

相关文章:

c - 使用标准输入

c - 冒号在此结构定义中的作用是什么?

c++ - 在 C++ 中使用 extern "C"时我到底失去了什么?

c - C中的单利计算程序总是返回0作为结果

c - 如何判断多维数组是否未分配给?

C 编程。字符段错误

c - 刽子手游戏的简化(且不完整)版本中的错误

c - 对于整数数组 |a|和整数 |i|在 C 中,a[i] 给出与 i[a] 相同的结果

c - 为结构成员赋值

c - std18 获取页面大小 : implicit declaration of function + nested extern declaration