C-如何指带有与函数体内局部名称相同名称的全局变量



如果我们定义全局变量怎么办 int x;函数的主体内部定义另一个变量int x;

函数'x'内部将始终引用局部变量'x'。现在,如果用户必须在非常函数内参考一个全局变量x,那么一个人如何实现?

由于您的问题被标记为" C",因此我会回答有关该语言的。其他语言可能会提供句法糖或机制来完成您想要的事情。

使用更大范围中存在的变量的名称定义变量称为阴影:内部定义 shadows 外部。

以下是一个示例:

int x = 42;
int main() {
    int x = 0; // Here, `x` shadows the global `x`.
    printf("%dn", x); // Prints '0'
}

在C中,无法获得阴影变量的值。

在样式计划中,阴影通常被认为是一种不良习惯,因为它使您的代码不太清晰和难以重构。

相关内容

  • 没有找到相关文章

最新更新