我正在尝试用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,
我一直看到的问题是空格似乎打破了字符串,即使它是一个字符串文字。我不确定该怎么做。有什么建议吗?
答案 0 :(得分:2)
在C ++中,std::cin >> mystring
使用空格作为分隔符。如果您想一次吞噬整行,请使用std::getline
。