处理命令行参数的命令

#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;

 }

  

你可能感兴趣的:(命令行)