程序main函数入口arg参数的用处
参考文章
前言
今天在看一些代码的时候偶然看到自己刚开始学C的时候,main()函数中都会有一个(int argc,char* argv[],char **env)的传参。但是到现在依旧不理解这几个参数的意义和它们代表的作用,在稍微查阅了一下以后,浅显的总结一下。
具体意义
如果要使用argc和argv的话(char **env暂时没遇到,不做记录),只需要在main函数当中添加这两个参数即可,大致参考写法类似如下:
1 | |
解释
argc是一个整形的参数,代表了程序运行的时候发送给main()函数的参数个数。
argv则是一个字符串的数组,用来指向存放对应参数的字符串。
其中,argv[]数组中的元素有argc个,并且有:
argv[0]包含的是程序运行的路径名字argv[1]包含的是程序命名后的第一个字符串argv[2]包含的是程序命名后的第二个字符串- …
argv[argc]为NULL
演示方法
为让以上解释更加形象,这里引入示例代码进行解释:
1 | |
假设代码文件存放于./b.cpp文件当中,通过编译器编译后的可执行文件为b。在执行如下指令:
1 | |
返回的内容为:
1 | |
在执行如下指令:
1 | |
返回的内容为:
1 | |
对应了上文中的argc的元素个数和argv的字符串内容,即./b后面的oneString、twoString和threeString。
程序main函数入口arg参数的用处
https://halc.top/p/98326a13