主要功能被神秘地宣布在某个未知的地方

0 c++ ubuntu g++

所以我真的有这个星球上最简单的C++文件,它不会编译.我似乎无法弄清楚以前在哪个主要定义,是在一些奇怪的搜索路径?我一直在四处寻找并且无法获得任何工作.

#include <iostream>


int main(int argv, char* argv[]) {
    std::cout << "It worked!" << std::endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我编译时发生这种情况:

g++ -c main.cpp -O3
main.cpp:4:31: error: conflicting declaration ‘char** argv’
 int main(int argv, char* argv[]) {
                               ^
main.cpp:4:14: error: ‘argv’ has a previous declaration as ‘int argv’
 int main(int argv, char* argv[]) {
              ^
main.cpp:4:5: warning: ‘int main(int)’ takes only zero or two arguments [-Wmain]
 int main(int argv, char* argv[]) {
     ^
make: *** [main.o] Error 1
Run Code Online (Sandbox Code Playgroud)

小智 5

它应该是:

  int main(int argc, char* argv[])
Run Code Online (Sandbox Code Playgroud)

您的参数当前都称为argv.