- 论坛徽章:
- 0
|
本帖最后由 285230769 于 2010-08-22 21:32 编辑
想实现功能:./test -f log1234 -c 3 -t 2 (f : logfie写入日志信息的文件 , c : count 执行的次数, -t time执行时间)
如下面这样子写好像就没有办法获取到 -c -t 的值了,该如何写呢? 谢谢!- void print_usage(void)
- {
- fprintf(stderr, "Usage:\n");
- fprintf(stderr, "\t-f: filename of log file. (eg, -f <logname>)\n");
- fprintf(stderr, "\t-c: count number. (eg, -c <countnumber>)\n");
- fprintf(stderr, "\t-t: time.(eg, -t <time>)\n");
- }
- char *parse_options(int argc, char **argv, unsigned int *c)
- {
- int sel;
- char *filename;
- char *count;
- char *time;
- *c = 0;
- filename = NULL;
- while((sel = getopt(argc, argv, "c:t:f:")) != -1){
- switch(sel){
- case 'f':
- filename = optarg; break;
- case 'c':
- mobileversion = atoi(optarg); break;
- case 't':
- baseversion = atoi(optarg); break;
- default:
- fprintf(stderr,"Wrong options.\n");
- print_usage();
- exit(1);
- }
- }
- return filename;
- }
- int main(int argc, char **argv)
- {
- unsigned int choice;
- char *logfile;
- logfile = parse_options(argc, argv, &choice);
- return 0;
- }
复制代码 |
|