我有一段代码:
在Windows MSVC 2012
#include <stdio.h>
#include <string.h>
namespace myname{
double var = 42;
}
extern "C" double _ZN6myname3varE = 10.0;
int main(){
printf("%d\n", _ZN6myname3varE);
return 0;
}
输出是0
。但我认为输出应该是10
. 你能帮忙解释一下为什么吗?