为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

C
慕森王 2019-10-21 10:13:59
如何在C中访问阴影的全局变量?在C ++中,我可以将其::用于全局名称空间。
查看完整描述

3 回答

?
慕的地6264312

TA贡献1817条经验 获得超6个赞

如果您的文件作用域变量不是静态的,则可以在嵌套作用域中使用使用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声明的,我看不到引用它的方法。


查看完整回答
反对 回复 2019-10-21
?
守着一只汪

TA贡献1872条经验 获得超3个赞

在c中没有::,但是您可以使用getter函数


#include <stdio.h>


int L=3;


inline int getL()

{

   return L;

}


int main();

{

   int L = 5;


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

}


查看完整回答
反对 回复 2019-10-21
  • 3 回答
  • 0 关注
  • 377 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信