Чтение параметров исполняемого файла - PullRequest
1 голос
/ 10 апреля 2011

в моей программе я буду использовать два параметра.Это может выглядеть так:

./myApp -status 7 -file abc.txt

Мой вопрос заключается в том, как сделать условия типа «if (parameter_status == 7)» и как получить файл abc.txt из -file в моем файле main?

Спасибо

Ответы [ 3 ]

3 голосов
/ 10 апреля 2011

Используйте вызов getopt () библиотеки GNU C. Пример его использования: www.gnu.org .

2 голосов
/ 10 апреля 2011
long int status = 0;
char *filename = NULL;

for (i = 1; i < argc - 1; i++) {
  if (!strcmp(argv[i], "-status")) {
    status = strtol(argv[++i], NULL, 10);
  } else if (!strcmp(argv[i], "-file")) {
    filename = argv[++i];
  }
}
2 голосов
/ 10 апреля 2011

Параметры, которые вы передаете через командную строку, находятся в argv param функции main (), их количество в argc.

...