当前位置:  开发笔记 > 编程语言 > 正文

如何在C中访问带阴影的全局变量?

如何解决《如何在C中访问带阴影的全局变量?》经验,为你挑选了2个好方法。

如何在C中访问带阴影的全局变量?在C++中,我可以::用于全局命名空间.



1> Johannes Sch..:

如果您的文件范围变量不是静态的,那么您可以使用在嵌套范围中使用extern的声明:

int c;

int main() {
    {
        int c = 0;
        // now, c shadows ::c. just re-declare ::c in a 
        // nested scope:
        {
            extern int c;
            c = 1;
        }
        // outputs 0
        printf("%d\n", c);
    }
    // outputs 1
    printf("%d\n", c);
    return 0;
}

如果使用static声明变量,我看不到引用它的方法.



2> Dutow..:

没有:: in c但你可以使用getter函数

#include 

int L=3;

inline int getL()
{
   return L;
}

int main();
{
   int L = 5;

   printf("%d, %d", L, getL());
}

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有