c语言对命令行参数的处理
原理
C语言把命令行看做由空格分隔带字段,每段看做一个命令行参数。通过main函数的参数获取命令行的参数。要处理命令行参数,程序的函数main要采取另外一种形式:
int main(int argv,char *argc)
//其中argv是命令行中的字段数,agrc是字符指针(的)数组,分别指向各分段的字段(这也是为什么判断有没有结束是用*argv=NULL而不是argv=NULL)。
//ARGc和ARGv中的ARG指的是"参数"(外语:ARGuments, argument counter 和 argument vector )
代码举例
写法1
#include<stdio.h>
int main(int argc,char * argv[]){
int i;
for(i=0;i<argc;i++){
printf("agrv[%d]:%s\n",i,argv[i]);
}
return 0;
}
写法2
#include<stdio.h>
int main(int argc,char * argv[]){
while(*argv++!=NULL){
printf("%s\n",*argv);
}
return 0;
}
写法3
#include<stdio.h>
int main(int argc,char * argv[]){
while(*argv!=NULL){
printf("%s\n",*argv++);
}
return 0;
}
写法2和写法3顺带复习下优先级
更多文章欢迎访问我的博客www.chen517.xyz