0 / 0 / 0
Регистрация: 17.11.2013
Сообщений: 39
|
||||||
1 | ||||||
Задача на exec07.10.2015, 23:23. Показов 750. Ответов 5
Метки нет (Все метки)
Здравствуйте! Никак не получается отладить программу, после вызова exec ничего не происходит. Прошу помочь.
Вкратце, что она должна делать: пользователь вводит имя программы (quit - выход), затем число аргументов и сами аргументы. После этого запускает заданную программу с заданным набором параметров. После этого все начинается заново.
0
|
07.10.2015, 23:23 | |
Ответы с готовыми решениями:
5
exec и ps exec Pipe и exec dup2&exec |
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
|
|
09.10.2015, 00:43 | 2 |
argv должно содержать первым элементом(т.е. argv[0]) путь к программе, а только потом - аргументы.
1
|
0 / 0 / 0
Регистрация: 17.11.2013
Сообщений: 39
|
||||||
11.10.2015, 16:00 [ТС] | 3 | |||||
В argv[0] вставил str (название программы), в argv[1] ... argv[p] аргументы, в argv[p+1] - NULL. Не помогло.
Добавлено через 24 минуты Сейчас примерно вот что есть
0
|
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
|
|
11.10.2015, 16:11 | 4 |
перый аргумент для execv - путь, а не просто имя файла
Добавлено через 59 секунд либо показывай вывод(ошибки) Добавлено через 1 минуту в строке 24 копируй а не присваивай. иначе удалишь память дважды Добавлено через 8 минут имеет смысл дожидаться завершения дочернего процесса (wait вместо sleep, например). либо задать флаг SA_NOCLDWAIT для SIGCHLD
1
|
0 / 0 / 0
Регистрация: 17.11.2013
Сообщений: 39
|
|
11.10.2015, 16:16 [ТС] | 5 |
Спасибо, вроде заработало.
//в строке 24 копируй а не присваивай. иначе удалишь память дважды Си подзабыл, как это здесь делается?
0
|
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
|
|
11.10.2015, 16:20 | 6 |
str(n)cpy
0
|
11.10.2015, 16:20 | |
11.10.2015, 16:20 | |
Помогаю со студенческими работами здесь
6
Какие аргументы передать exec? Особенности использования fork и exec Как вызвать команду ps функцией exec? Exec As Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |