Попытка использовать getopt с файлом, который начинается с da sh '-' в качестве аргумента - PullRequest
0 голосов
/ 07 августа 2020

Сейчас я работаю с функцией getopt (). Я реализую программу, похожую на команду ls в Unix. Однако, похоже, все работает правильно, если, скажем, у меня есть файл с именем «-xyz» и передать имя файла в качестве аргумента, getopt () не будет рассматривать его как файл / каталог.

Например, если я наберу: ./myprogram -i Makefile -xyz, я ожидаю, что функция будет обрабатывать -xyz как файл / каталог, но вместо этого пытается рассматривать его как параметры.

Вот мой код:

while((choice = getopt(argc, argv, "ilR")) != -1){  

      switch(choice) {
        
        case 'i':  
            opt->option_i = 1;
            break;
        case 'l':  
            opt->option_l = 1;
            break;
        case 'R':  
            opt->option_R = 1;
            break;
        default:
            exit(1);
            
    }
}

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...