Предотвращение печати программы C ++ на стандартный вывод при вызове через python - PullRequest
0 голосов
/ 16 мая 2018

Прежде всего, отправка вывода в NULL, как упоминалось в других вопросах, работает для вывода оболочки Python, но не мешает самой программе c.


Давайте начнемс тем, что происходит,

цель состоит в том, чтобы написать Python-программу для решения определенных математических задач.

Эта программа использует SDPAp (SemiDefinite Programming Algorithm - Python) модуль Python, который сам по себе являетсяне более чем обертка для SDPA.SDPA - это решатель для SDP, написанных на C ++.

SDPAp-модуль имеет возможность предотвратить печать некоторых выходных данных, но все еще остается мусор.Этот вывод поступает из самого SDPA, и до сих пор каждая попытка предотвратить это не удалась.

Программа python должна распечатывать решения для консоли, записывать их в какой-то файл и т. Д., Не помогает решить проблему, поскольку эта программа будет использоваться в качестве подпрограммы позже.


Структура


Программа Python - должна писать в консоли

Программа Python - вызываетSDPAp-модуль, являющийся Python-интерфейсом для SDPA, являющегося программой C ++, записывает в консоль

Программа C ++ ничего не должна выводить.


Поскольку задан этот вопроскосвенно реакция может занять некоторое время.


sys.stdout = devnull запрещает вывод Python, не запрещает вывод SDPA

Не используются ни subprocess, ни os.system.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...