Интеграция с Python и C ++. Python печатает строку в несколько строк - PullRequest
2 голосов
/ 18 августа 2010

Я пытаюсь написать программу на python для запуска программы на C ++.Это не сработало, поэтому я сделал самую базовую версию, какую только мог.Программа на C ++ просто получает строку из stdin, а затем печатает ее.Код Python написан следующим образом:

import popen2, string, StringIO

fin, fout = popen2.popen2("PyTest")
msg = ur"Hello, world!"
print msg
fout.write(msg)
print fin.readline()

Вывод, однако, выглядит следующим образом:

Hello, world!
Hello,

Проблема, которую я продолжаю видеть, заключается в том, что пробелы, кажется, разделяют строку, дажехотя это строковый литерал.Я не совсем уверен, что делать здесь.Есть предложения?

1 Ответ

2 голосов
/ 18 августа 2010

В C ++ std::cin >> mystring использует пробелы в качестве разделителей.Вместо этого используйте std::getline, если хотите поглотить всю строку за раз.

...