【问题标题】:How can I execute Java and Python programs from a C++ program [closed]如何从 C++ 程序执行 Java 和 Python 程序 [关闭]
【发布时间】:2012-01-21 19:13:11
【问题描述】:

我需要从我的 C++ 程序中运行一些 Python 和 Java 代码。我发现了如何从我的程序运行 EXE 文件。但我不知道如何运行这些代码。

我获得了 Microsoft Visual C++、Codeblocks、Dev C++ 和 Turbo C++。如果有人知道如何在这些编译器中执行此操作,请告诉我或告诉我可以执行此操作的编译器的名称。

【问题讨论】:

  • 你可以使用命令行编译java代码然后执行,python也是这样
  • 你能解释一下我的c++程序如何在执行之间运行java或python程序......

标签: java c++ python visual-c++ compilation


【解决方案1】:

你说你知道如何运行一个 exe,所以运行 java.exepython.exe 并将你的 .class.py 文件的名称作为参数。

【讨论】:

  • do java 和 python 也可以制作 exe 文件,就像 c 或 c++ 程序在执行时制作的那样......????因为我从某人那里听说他们不制作 exe 文件,因为 java 和 python 有自己的环境.....
  • Java 和 Python 通常不会变成 exe,尽管我知道(至少对于 Python 而言),但有办法做到这一点。虽然确实如此,但通常不这样做会更简单。
  • c++程序能否在运行exe文件时简单地运行java的.class文件和python的.py文件???.....
  • @AnkitGupta 正如 Deflect 所提到的,通常您不会为这些语言中的任何一种生成 .exe 文件,尽管有一些方法可以做到这一点。在我的回答中,java.exe 和 python.exe 指的是这些语言的标准运行时。您分别通过运行“java MyClass”或“python my_program.py”来“运行”MyClass.class/my 或 program.py。 (请注意,您可能需要包含其他参数才能获得正确的路径。)
【解决方案2】:

您可以使用system() 函数。

【讨论】:

  • 好吧,你应该阅读this article。使用system() 执行代码的解释器,例如:system("java my_java_prog.jar");
【解决方案3】:

您可以使用Boost Pythonembed Python 在你的 C++ 程序中。在这种情况下,我认为您需要将 Python 代码作为字符串包含在 C++ 代码中。 不过,您可以将 Python 文件作为字符串读入 C++ 代码。

如果你没有在 C++ 和 Python 之间传递信息,那就太过分了, 您可以按照 GamePad64 的建议使用system, 你可以像system("foo.py param1 param2")一样调用shell/os, 或system("python foo.py param1 param2")。您可以在 SO 上找到类似的问题 通过搜索例如“C++ python系统”,例如 Adding python script to c++ project.

【讨论】:

  • 如果我使用这种方法......那么我将不得不相应地编写我的python代码????我的意思是我想我在那个页面上看到我将不得不对我的代码进行一些更改......我必须这样做还是我可以简单地运行任何 python 代码......
  • @AnkitGupta:查看扩展答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多