C++标准允许main函数有或者没有形参列表,比较常见的是main函数中有两个形参,一个为argc,一个为argv,形式如下。
int main(int argc, char *argv[]) 或者 int main(int argc, char **argv),当没有形参时,为int main()
argc为argv指向的字符串的数量,其大小为参数的数量再加上1,在这里的1为程序名本身。
argc和argv在这里分别称为参数数量和参数向量。但是它们也可以用其他的变量名来替代,比如int main(int num_args, char **arg_strings)。
通过下面这个程序,可以明白argc和argv的意义。
#include <iostream>
int main(int argc, char** argv) {
std::cout << "Have " << argc << " arguments:" << std::endl;
for (int i = 0; i < argc; ++i) {
std::cout << argv[i] << std::endl;
}
}通过命令行./test a1 b2 c3运行,输入结果为
Have 4 arguments:
./test
a1
b2
c3
本文详细解释了C++标准中main函数的实现方式,包括带参数和不带参数的形式,以及参数argc和argv的作用。通过一个示例程序展示了如何通过命令行传递参数,并解释了参数的数量和内容。
1108

被折叠的 条评论
为什么被折叠?



