c语言指针数组作 main 函数的形参

本人第一次尝试写博客,c语言还没有学完。如果有不清楚或者错误的地方请各位大佬多多指教,以下是本人的一些理解,希望可以帮到萌新。切入正题。

指针数组的一个重要作用就是作为main函数的参数。一般情况下main函数都是为空。

int main()或者int main(void) 

但其实main函数是有参数的

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

这里main函数里面argc表示参数的个数(即整形)>1,否则就没有意义了,因为在dos命令里面输入访问的时候必须要用到文件名输入访问,文件名算一个参数。argv是一个char *指针数组,数组中每一个元素(其值为指针),指向命令行中的一个字符串,我举一个栗子。

#include <stdio.h>

int main(int argc,char *argv[]){
	
	while(argc>1){
		++argv;
		printf("%s\n",*argv);
		--argc;
	}
	return 0;
}

main函数在dos命令里面的用法

1、先在编译器里面编译此代码,再到dos命令里面操作。注意:如果不编译此代码接下来就无法操作,因为要在所在文件目录里生成一个exe文件(可执行文件)。

main就是文件名,也叫命令名

2、进入dos命令输入参数
进入dos命令找到所在的文件夹的目录

输入方法:命令名 参数1 参数2 …参数n
注意:main就是文件名是必须要用到的,其他参数可以随意输入字符串。格式之间如图不是用逗号隔开,而是用空格,main(即文件名)本身就是一个字符串。
3、输入结果
在这里插入图片描述

回过头再来看程序

其中++argv是先进行++的操作,使argv指向下一个元素,然后在printf函数里面进行*的运算,找到argv当前指向的字符串输出该字符串,在开始时,argv指向字符串main(即文件名)。上面已经说到main函数算一个参数,++argv使之指向"China",所以第一次输出的是"China",第二次输出"Beijing"。

那里有错说的不清楚请大佬萌新指出,感谢支持 三克油

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值