#include<stdlib.h> #include<stdio.h> #define TURE 1 void process_standered_input(void); void process_file(char* filename); int option_a,option_b; /*处理命令行参数的命令*/ //类似于prog -a -b -c name1 name2 name3的命令行输入参数命令 int main(int argc,char **argv) { while(*++argv!=NULL&&**argv=='-')//跳到下一个参数,并检查其是否为‘-’开头 { switch(*++*argv)//判断每个‘-’后面的参数是什么 { case 'a': option_a=TURE; break; case 'b': option_b=TURE; break; } } if(*argv==NULL)//若是后面没有了。则执行标准输入命令 process_standered_input(); else { do { process_file(*argv);//否则对后面的文件进行处理 } while (*++argv!=NULL); } system("pause"); return 1; }
#include<stdlib.h> #include<stdio.h> #define TURE 1 void process_standered_input(void); void process_file(char* filename); int option_a,option_b; /*处理命令行参数的命令*/ //类似于prog -abc name1 name2 name3的命令行输入参数命令 int main(int argc,char **argv) { int opt; while(*++argv!=NULL&&**argv=='-')//跳到下一个参数,并检查其是否为‘-’开头 { while((opt=*++*argv)!=NULL) //检查第二个参数,即一‘-’开头的后面的部分的选项 { switch(opt) { case 'a': option_a=TURE; break; case 'b': option_b=TURE; break; } } } if(*argv==NULL)//若是后面没有了。则执行标准输入命令 process_standered_input(); else { do { process_file(*argv);//否则对后面的文件进行处理 } while (*++argv!=NULL); } system("pause"); return 1; }