在许多 C++ IDE 和编译器中,当它为您生成 main 函数时,它看起来像这样:
int main(int argc, char *argv[])
当我在没有 IDE 的情况下仅使用命令行编译器编写 C++ 代码时,我键入:
int main()
没有任何参数。这是什么意思,对我的计划至关重要吗?
原文由 Greg Treleaven 发布,翻译遵循 CC BY-SA 4.0 许可协议
在许多 C++ IDE 和编译器中,当它为您生成 main 函数时,它看起来像这样:
int main(int argc, char *argv[])
当我在没有 IDE 的情况下仅使用命令行编译器编写 C++ 代码时,我键入:
int main()
没有任何参数。这是什么意思,对我的计划至关重要吗?
原文由 Greg Treleaven 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答1.7k 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
2 回答2.8k 阅读
1 回答1.6k 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
1 回答930 阅读
1 回答1.1k 阅读
argv
和argc
是在 C 和 C++ 中将命令行参数传递给main()
的方式。argc
将是argv
指向的字符串数。这将(实际上)是 1 加上参数的数量,因为几乎所有的实现都会将程序的名称添加到数组中。按照惯例,变量被命名为
argc
( _参数计数_)和argv
( _参数向量_),但它们可以被赋予任何有效的标识符:int main(int num_args, char** arg_strings)
同样有效。如果您不打算处理命令行参数,它们也可以完全省略,产生
int main()
。试试下面的程序:
用
./test a1 b2 c3
运行它会输出