【发布时间】:2020-05-12 02:51:57
【问题描述】:
我不熟悉强弱符号概念。对于以下示例(纯 C)代码,x 定义了两次,一次是强,一次是弱。我想让我的编译器报错:
foo.c:
#include <stdio.h>
void f(void);
int x = 15213;
int main(){
f();
printf("x = %d\n", x);
return 0;
}
bar.c
int x;
void f(){
x = 15212;
}
对于 gcc,“-fno-common”是我想要的:
gcc -o foobar foo.c bar.c -fno-common 因此它报告重新定义的符号 (x)。
Visual Studio 中是否有等效的编译选项? (如果我描述有误,请纠正我)
【问题讨论】:
标签: c hyperlink compilation symbols