所以我在Linux中,我想让一个程序在从命令行执行时接受参数
比如说,
/myprogram 42-b-s
因此,程序将把数字42存储为int,并根据它得到的参数(如-b或-s)执行代码的某些部分
你可以使用getopt
#包括<;ctype.h>;
#包括<;标准h>;
#包括<;stdlib.h>;
#包括<;unistd.h>;
int
主(内部argc,字符**argv)
{
int bflag=0;
int-sflag=0;
整数指数;
INTC;
opterr=0;
而((c=getopt(argc,argv,“bs”)!=-1)
开关(c)
{
案例“b”:
bflag=1;
打破
案例s:
sflag=1;
打破
案例“?”:
如果(iPrint(optopt))
fprintf(stderr,“未知选项”-%c.\n”,optopt);
其他的
fprintf(标准,
未知选项字符“\\x%x”。\n”,
光电转换);
返回1;
违约:
中止();
}
printf(“bflag=%d,sflag=%d\n”,bflag,sflag);
对于(index=optind;index<;argc;index++)
printf(“非选项参数%s\n”,argv[index]);
返回0;
}