|
@@ -10,12 +10,13 @@ static const struct option long_option[]={
|
|
{"stdin",required_argument,NULL,'i'},
|
|
{"stdin",required_argument,NULL,'i'},
|
|
{"not-run-cl",no_argument,NULL,'n'},
|
|
{"not-run-cl",no_argument,NULL,'n'},
|
|
{"print-clock",no_argument,NULL,'p'},
|
|
{"print-clock",no_argument,NULL,'p'},
|
|
|
|
+ {"locale",optional_argument,NULL,'l'}, // 可选参数
|
|
{NULL,0,NULL,0}
|
|
{NULL,0,NULL,0}
|
|
};
|
|
};
|
|
|
|
|
|
-static const char *short_option = "o:e:i:np";
|
|
|
|
|
|
+static const char *short_option = "o:e:i:npl::"; // l::可选参数
|
|
|
|
|
|
-Args args = {.out_file=NULL, .error_file=NULL, .in_file=NULL, .run_commandLine=true, .p_clock=false};
|
|
|
|
|
|
+Args args = {.out_file=NULL, .error_file=NULL, .in_file=NULL, .run_commandLine=true, .p_clock=false, .locale=""};
|
|
|
|
|
|
/**
|
|
/**
|
|
* 参数设置, args是全局结构体, 保存全局的参数设置
|
|
* 参数设置, args是全局结构体, 保存全局的参数设置
|
|
@@ -46,6 +47,12 @@ int getArgs(const int argc, char **argv)
|
|
args.run_commandLine = false;
|
|
args.run_commandLine = false;
|
|
break;
|
|
break;
|
|
case 'p':
|
|
case 'p':
|
|
|
|
+ if (optarg != NULL)
|
|
|
|
+ args.locale = optarg; // 不需要复制
|
|
|
|
+ else
|
|
|
|
+ args.locale = "";
|
|
|
|
+ break;
|
|
|
|
+ case 'l':
|
|
args.p_clock = true;
|
|
args.p_clock = true;
|
|
break;
|
|
break;
|
|
case '?':
|
|
case '?':
|