LINUX.ORG.RU

История изменений

Исправление pro100ren4, (текущая версия) :

Окей я понял вас и постараюсь проиллюстрировать ситуацию максимально понятно. У меня есть небольшая программа как в программа, как в вопросе, которая в цикле считывает данные с помощью scanf и что-то печатает с помощью printf. Мне необходимо из другой программы:

  1. Запустить первую программу.
  2. Передать ей данные для ее scanf, чтобы она их считала.
  3. Считать вывод, который она выдала с помощью printf (Не считывать вывод с помощью printf)
  4. Повторить все с шага 2. Но у меня возникает проблема, потому что программа sample блокируется на шаге 2, как я понял из-за того, что demo ожидает еще данных(хотя при взаимодействии через консоль, после получения '\n' она продолжает выполнение). Я не понимаю как решить эту проблему, так как не знаком со всеми тонкостями взаимодействия с FIFO каналами. Прилагаю ссылку на репозиторий с проектом. Думаю так будет сильно лучше: https://github.com/pro100ren4/mtest

Исходная версия pro100ren4, :

Окей я понял вас и постараюсь проиллюстрировать ситуацию максимально понятно. У меня есть небольшая программа как в программа, как в вопросе, которая в цикле считывает данные с помощью scanf и что-то печатает с помощью printf. Мне необходимо из другой программы:

  1. Запустить первую программу.
  2. Передать ей данные для ее scanf, чтобы она их считала.
  3. Считать вывод, который она выдала с помощью printf (Не считывать вывод с помощью printf)
  4. Повторить все с шага 2. Но у меня возникает проблема, потому что программа блокируется на шаге 2, как я понял из-за того, что ожидает еще данных(хотя при взаимодействии через консоль, после получения '\n' она продолжает выполнение). Я не понимаю как решить эту проблему, так как не знаком со всеми тонкостями взаимодействия с FIFO каналами. Прилагаю ссылку на репозиторий с проектом. Думаю так будет сильно лучше: https://github.com/pro100ren4/mtest