局部如何访问全局同名变量?
#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;
}
[解决办法]
观点一致 支持楼上的
[解决办法]
验证过了 支持楼上的楼上