В linux я хотел бы написать программу на C, которая запускает другую программу. Когда программа запускается, оболочка будет ждать ввода команды, определенной в вашей программе. Эта команда запустит вторую программу.
Например, предположим, что существует простая программа C, называемая "привет" в том же каталоге, что и вызывающая программа. Программа "привет" выводит результат "привет, мир". Первая программа будет запущена, и пользователь будет вводить команду "привет". Программа "привет" будет выполнена и "привет, мир". будет выводиться в оболочку.
Я сделал поиск, и люди предложили функции "fork()" и "exec()". Другие сказали использовать "system()". Я не знаю об этих функциях. Как я могу назвать эти функции? Они подходят для использования?
Пример кода с пояснениями будет наиболее полезен. Другие ответы также приветствуются. Ваша помощь с благодарностью.