分析参数到主要功能
parsing parameters to main function
我不明白以下代码:
int main(int argc, char** argv)
{
// See if we've been given a seed to use (for testing purposes). When you
// specify a random seed, the evolution will be exactly the same each time
// you use that seed number.
unsigned int seed = 0;
for(int ii=1; ii<argc; ii++) {
if(strcmp(argv[ii++],"seed") == 0) {
seed = atoi(argv[ii]);
}
}
如何将值传递给主函数?我读了一点,发现它称为解析,您能澄清一下吗?
谢谢,
参数int argc
和char** argv
自动传递给main
,并从用于调用程序的命令行中解析。它们各自是命令行参数的数量,包括程序名称本身以及这些参数的C风格字符串的数组。因此,如果用于调用my_prog
:
./my_prog file 10
main
使用argc
设置为3,而argv
是char*
的3个数组,该数组是3个指示器,"./my_prog"
,"file"
和"10"
编辑:感谢@basilestarynkevitch在POSIX投诉系统上指出的argv
将具有NULL
的argc + 1
元素,以指示参数的结尾。
相关文章:
- 如何在C++中调用默认模板功能参数?
- 为什么指定数据类型而不是构造功能参数?C
- 为什么在相同大小的功能参数中隐式转换不会发出警告
- 无全局变量或功能参数的递归调用
- 将功能参数添加到向量
- 使用ENABLE_IF和SFINAE时,功能参数类型扣除(std容器,例如向量)失败
- C 功能参数中的返回参数
- 将std ::字符串移至功能参数
- 可以在功能参数列表中多次使用函数模板的模板参数名称
- C 元组类型用于功能参数类型
- 功能参数包
- 我可以使用模板功能参数C 更改模板类型
- 为了支持移动语义,应通过unique_ptr,值或rvalue获取功能参数
- 创建模板函数以使用该功能参数调用其他函数
- C 功能参数扩展了多个类
- GDB CoreFile不查看功能参数
- 功能参数导致堆栈溢出
- C 在功能参数中指向基类指针的指针
- 功能参数转换为儿童类C
- 功能参数与函数调用不匹配