【小技巧】argc和argv的用法

364 阅读1分钟

在Linux底下编程的时候,经常会看到如下的一行代码:

int main(int argc,char*argv[]){}

有时候,这个argv还会在main函数实现中被用到,那么就会有小伙伴不知道是干嘛用的,或者说知道是干嘛用的,不知道怎么用。

我也困惑过,所以写下来。


main(int argc,char *argv[ ])

argv为指针的指针

argc为整数

char **argv or: char *argv[] or: char argv[][]


假设程序的名称为CX,

当只输入CX,则由操作系统传来的参数为:

argc=1,表示只有一程序名称。

argc只有一个元素,argv[0]指向输入的程序路径及名称:./CX

当输入==./CX CanShu_1==,有一个参数,则由操作系统传来的参数为:argc=2,表示除了程序名外还有一个参数。

argv[0]指向输入的程序路径及名称。
argv[1]指向参数para_1字符串。

当输入==./CX CanShu_1 CanShu_2== 有2个参数,则由操作系统传来的参数为:argc=3,表示除了程序名外还有2个参数。

argv[0]指向输入的程序路径及名称。

argv[1]指向参数para_1字符串。

argv[2]指向参数para_2字符串。

以此类推.


够详细吧