【发布时间】:2016-04-09 14:40:16
【问题描述】:
在我的 django python 脚本中,我运行我的 .cpp 程序。我想通过python中的子进程在c++中捕获我的标准输出(cout)。在 c++ 中,我尝试创建一个缓冲所有 couts 的流并将其返回 main(),但我可以在 main 函数中返回的唯一值是整数。 所以我的问题是:是否有任何其他可能通过 python 捕获 c++ couts 以任何其他方式进行价值?提前致谢!
我尝试使用 popen by:
command = 'g++ -std=c++0x mutualcepepe.cpp -D "bomba = ' + str(strT) + '"'
process = subprocess.Popen(command, stdout=subprocess.PIPE, shell=True)
output = process.communicate()
print output
我之前使用的另一种可能性是调用下面的行,它会为我提供包含来自 c++ 的 couts 的输出文件。
os.system('g++ -std=c++0x mutualcepepe.cpp -D "bomba = ' + str(strT) + '" -o mutualout')
【问题讨论】:
-
你运行的是哪个版本的python
标签: python c++ subprocess stdout popen