c命令行参数和exec家族

本文介绍了C语言中处理命令行参数的方法,包括argc和argv的使用,以及如何通过示例理解argv数组的构造。接着,文章详细讲解了exec函数族中的execv函数,解释了其参数含义,并提供了正确和错误的使用示例,强调了命令行参数数组中应包含可执行文件路径以及在结尾添加NULL的重要性。
摘要由CSDN通过智能技术生成

 一、命令行参数

void main(int argc, char *argv[])

其中argc表示传入的参数的数量,argv是一个存string的数组,实际上是char数组的数组,里面存放着执行这个executable的时候,命令行的所有参数。 

如果命令行输入:

gcc test.c//生成可执行文件
./a.out

 那么argv=./a.out

gcc test.c//生成可执行文件
./a.out parameter1 parameter2 parameter3

 那么argv=./a.out parameter1 parameter2 parameter3

argv[0]=./a.out , argv[1]=parameter ......

这里argv是一个string数组,当命令行输入命令的时候,实际上执行的赋值过程是:

char *argv[]={"./a.out", "parameter1", "parameter2", "parameter3"};

看个例子: 

void main(int argc, char *argv[]){
   printf("%d%s",argc,argv[0]);
}

假如程序叫做test.c

首先gcc test.c,然后./a.outÿ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值