代码中唯一写的是:
#include <iostream>
using namespace std;
int x0, y0;
当我编译时,它给我一个错误:“ y0”:重新定义;以前的定义是“功能”
答案 0 :(得分:4)
y0
似乎是gcc(可能还有其他一些编译器)中的内置函数,请参阅:
https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html
然后扫描以下内容:
在严格的ISO C模式下(-ansi,-std = c90,-std = c99或-std = c11),功能... y0 ...可以按以下方式处理:在功能中...
因此, tl; dr ,请使用其他名称。
您可以看到gcc生成here的有用错误消息,尽管至少在gcc 8.1中这只是警告:
prog.cc:4:9:警告:内置函数y0声明为非功能[-Wbuiltin-declaration-mismatch] int x0,y0;
因此,对于下一次OP,以便您不会被否决(尽管这次我没有),请:
谢谢。