如何通过python代码将命令行参数传递给C++文件?

问题描述:

我正在使用这个os.system(“rc.cpp”)然后是os.system(“./a.out”)在Python代码中编译一个C++文件。我想将一个命令行参数传递给rc文件。我该怎么做?如何通过python代码将命令行参数传递给C++文件?

+0

你是什么意思“运行C++文件”。您可以编译C++代码并将其链接到可执行文件,然后运行。你想编译它吗?你使用的是什么C++工具链? – zdan 2010-05-03 19:15:06

+0

我的意思是编译它。 – Hick 2010-05-03 19:18:17

+1

将C++添加到标签 – 2010-05-03 19:32:54

在scons的请看:http://www.scons.org/

你写它是Python脚本生成配置文件。

您应该使用subprocess module来调用其他可执行文件。 subprocess.Popen将列表作为第一个参数。列表中的第一项是您想要调用的可执行文件。所有列表项都是传递给可执行文件的参数。

from subprocess import Popen 
p = Popen(['/usr/bin/foo', 'arg1', 'arg2']) 
+0

,所以假设有一个名为foo.py和foo.cpp的东西。哪一个应该采取?如果你给/ usr/bin/foo它怎么编译foo.cpp? – Hick 2010-05-03 19:33:49

+0

它不编译任何东西,它只是让你调用一个外部可执行文件。如果你想编译它,你必须调用某种编译器。我给的例子会调用/ usr/bin/foo。如果你想要它调用/usr/bin/foo.py,你需要把它放在那里。 – 2010-05-03 19:41:15

+0

根据我询问如何运行C++代码的问题。使用Popen我该怎么做? – Hick 2010-05-03 19:49:15