读书人

局部怎么访问全局同名变量

发布时间: 2012-03-09 16:54:57 作者: rapoo

局部如何访问全局同名变量?
#include <stdio.h>


int a = 10;

void fun()
{
int a = 100;
// extern a;
printf( "out a : a = %d ", a);
}
int main(int argc, char *argv[])
{

fun();


return 0;
}


[解决办法]
void fun()
{
int a = 100;
// extern a;
printf( "out a : a = %d ", ::a);
}
[解决办法]
楼上的在C++中是可以的。不过C中没有 :: 全局作用域解析符
还是要用extern

#include <stdio.h>

int a = 10;

void fun()
{
int a = 100;
{
extern int a;
printf( "out a : a = %d\n ", a);
}
}

int main(int argc, char *argv[])
{

fun();

return 0;
}
[解决办法]
观点一致 支持楼上的
[解决办法]
验证过了 支持楼上的楼上

读书人网 >C语言

热点推荐