Привет, я тестирую программу по умолчанию getopt()
, которую можно найти здесь .
Когда я запускаю этот код и набираю, например, myProgram -c -b. -c
, в качестве параметра принимается -b
. Как я понял, читая о getopt()
, символы, начинающиеся с -
, рассматриваются как особый случай. Могу ли я получить getopt()
вместо -b
в качестве параметра для -c
запустить -c
без аргумента, а затем -b
вместо?
while ((c = getopt(argc, argv, "abc:")) != -1)
{
char test = 111;
std::cout << test << std::endl;
switch (c) {
case 'a':
aflag = 1; break;
case 'b':
bflag = 1; break;
case 'c':
{
cvalue = optarg;
break;
}
case '?':
if (isprint(optopt))
{
fprintf(stderr, "Unknown option `-%c'.\n", optopt);
}
else
fprintf(stderr, "Unknown option character `\\x%x'.\n", optopt);
return 1;
default:
abort();
}