argc和argv怎么使用arg表示argument,也就是参数。c表示count,也就是个数。

  • 1.argc为整数

  • 2.argv为指针的指针(可理解为:char **argv or: char *argv[] or: char argv[][] ,argv是一个指针数组)

注:main()括号内是固定的写法。

  • 3.下面给出一个例子来理解这两个参数的用法: 假设程序的名称为prog, 当只输入prog,则由操作系统传来的参数为: argc=1,表示只有一程序名称。 argc只有一个元素,argv[0]指向输入的程序路径及名称:./prog 当输入prog para_1,有一个参数,则由操作系统传来的参数为: argc=2,表示除了程序名外还有一个参数。 argv[0]指向输入的程序路径及名称。 argv[1]指向参数para_1字符串。

  • 总结:argc和argv用于向main()传递程序启动时的相关信息,具体情况与实现有关。一种常见的情况是,argc是命令行参数的个数,rgv[0], argv[1]……argv[argc-1]都是指向string的指针,这些string就是命令行中的各个参数。

例如,假如命令行是X a bc则argc为3 argv[1]和argv[2]则分别是指向"a"和"bc"起始字符的指针 argv[0]指向什么样的字符串与具体实现有关 argv[argc]一定是NULL