Расхождение в списке аргументов командной строки между отладчиком и исполняемым файлом - PullRequest
2 голосов
/ 05 мая 2011

Этим вечером мне пришлось укусить меня в каком-то чувствительном месте, и мне нужно кое-что прояснить.Как сказал karlphillip в этом вопросе , исполняемый файл видит список аргументов как

Consider: ./program file.txt

argv[0] is "program"
argv[1] is "file.txt"

Однако в отладчике gdb для программы ./lc1 f1.txt arglist отображается как

arg[0] is "/home/jason/Project 6/lc1"
arg[1] is "lc1"
arg[2] is "f1.txt"

Почему расхождение между двумя арглистами?

1 Ответ

3 голосов
/ 05 мая 2011

Я не могу воспроизвести эту ошибку. Как вы запускаете его в приглашении GDB?

Полагаю, у вас есть

(gdb) run lc1 f1.txt

что не так. В приглашении GDB это должно быть

(gdb) run f1.txt

Это согласуется с вашим обычным исполнением.

...