c语言argc和argv的作用,c语言中int main(int argc, char argv)中argc和argv的作用

摘要:我们在开发C语言时,经常看到int main(int argc, char *argv[]),但是没有太多的关注于argc和argv这两个参数,其实它们有很多的作用呢。

编写一个计算器

为了简单起见,我在Ubuntu下编写了一个支持个位数“加、减”操作的计算器,我们待会通过这个实例向大家讲解argc和argv参数的作用。

先看使用操作

e8cf0b18973ba82df7c49d1059a28ddd.png

我们可以使用./calc程序,第一个参数传入运算符(+或-),第二个参数传入(第一个加数或者被减数),第三个参数传入(第二个加数或者减数),就可以得到运算结果。

来看代码(代码的写得很糟是为了简单起见,大家如果觉得有用可以自己改进)。

1.#include 

2.

3.intmain(intargc,char*argv[])

4.{

5.inti = 0, result = 0;

6.charopt = 0;

7.if(argc == 1)

8.{

9.printf("Please Enter Parameter\r\n");

10.return-1;

11.}

12.switch(argv[1][0])

13.{

14.case'+':

15.printf("%d + %d = %d\r\n", (argv[2][0]-'0'), (argv[3][0]-'0'), (argv[2][0]-'0')+(argv[3][0]-'0') );

16.break;

17.

18.case'-':

19.printf("%d - %d = %d\r\n", (argv[2][0]-'0'), (argv[3][0]-'0'), (argv[2][0]-'0')-(argv[3][0]-'0') );

20.break;

21.}

22.return0;

23.}

我们的运算数据和运算符都是都过argc和argv参数传递进来的。现在我们开始第二个实验向大家讲解argc和argv参数的作用。

二、编写一个打印argc和argv的程序

首先来看代码:

1.#include 

2.

3.intmain(intargc,char*argv[])

4.{

5.inti = 0;

6.printf(" argc = %d\r\n", argc);

7.for(i=0; i

8.{

9.printf("argv[%d] = %s\r\n", i, argv[i]);

10.}

11.

12.return0;

13.}

我分别传入0个参数,1个参数,2个参数,大家来看实验结果:

dbffabd64d84445596dc337510a6106f.png

我们在不传参数时,默认有1个参数,它的内容是字符串”./test”,也就是我们执行文件时的执行指令。

argc = argument cout,表示传入参数的个数;argv是一个字符串指针数组,表示传入参数的内容,我们可以根据argc中的值去判断字符串指针数组中的个数,每一个数组成员都是一个字符串指针地址,可以用printf打印出来。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值