memtest/args_parser.h

52 lines
1.7 KiB
C

#pragma once
void print_help(const char *progname) {
printf("Использование: %s [опции]\n", progname);
printf(" -h, --help показать это сообщение\n");
printf(" -t, --threads N указать число потоков\n");
printf(" -i, --iterations N указать число повторения тестов\n");
printf(" -j, --json вывод в виде json\n");
printf(" -p, --pretest-delay N указать сколько секунд ждать\n\t\t\tперед проверкой памяти после записи\n");
}
void aaa(int* argc, char *argv[], int* pretest_delay){
const struct option long_options[] = {
{"help", no_argument, 0, 'h'},
{"threads", required_argument, 0, 't'},
{"verbose", no_argument, 0, 'v'},
{"iterations", required_argument, 0, 'i'},
{"json", no_argument, 0, 'j'},
{"pretest-delay", no_argument, 0, 'p'},
{0, 0, 0, 0}
};
int opt;
while ((opt = getopt_long(*argc, argv, "ht:i:jp:", long_options, NULL)) != -1) {
switch (opt) {
case 'h':
print_help(argv[0]);
exit(0);
case 't':
args.tred = atoi(optarg);
break;
case 'i':
args.iterations = atoi(optarg);
break;
case 'p':
*pretest_delay = atoi(optarg);
break;
case 'j':
args.json = 1;
break;
default:
print_help(argv[0]);
exit(1);
}
}
}