如何从c++程序中运行另一个程序
How do I run another program from a C++ program
我试图调用另一个程序来执行一个函数(我不知道什么,只是它不是用c++写的,而是在shell中)在我的c++程序中的文件上。我不知道如何在我的程序中实际执行这个函数。我只知道我写过这样的东西
system(PROGRAM HERE);
问题是我不知道该怎么把程序打出来。我相信如果这个函数被称为dostuff,我会输入
system("dostuff");
…我认为。但是如果我在c++程序中作为变量给函数附加了一些参数呢?这才是我真正需要帮助的地方。在终端中,我会输入"dostuff -1 arg"
"。那么在c++中,我会输入
int arg = 5;
system("dostuff" arg);
您可以先格式化字符串。含<sstream>
:
int arg = 5;
std::stringstream ss;
ss << "dostuff " << arg;
system(ss.str().c_str());
或者,您可以使用std::string
的连接特性。如果您喜欢c风格的格式化程序,您可以使用snprintf
来达到类似的效果。
简单的答案是
system("dostuff -1 5");
本质上,你需要构造终端参数并将其传递给系统调用。
,
int arg = 5;
std::stringstream command;
command << "dostuff -1 " << arg;
system(command.str());
相关文章:
- 如何使用C++读取另一个程序中的源代码输出
- 如何将一个窗口保留在另一个应用程序窗口的前面
- 将库链接到另一个应用程序时,CMAKE 找不到库
- 程序在使用 system() 启动另一个可执行文件时停止
- 使用另一个程序调用正在运行的 C++ 程序中的函数
- 调试控制台 ChessEngine.exe "used"在另一个应用程序(国际象棋 GUI)中
- C++将结构复制到另一个程序的资源
- 如何在 qt 中从另一个线程运行 qt并发时关闭程序
- 试图让C++程序循环回到代码中的另一个点
- 为什么在我的程序中输入另一个输入会给我不同的结果
- 在 Windows 10 中将一个应用程序放在另一个应用程序前面
- 将数据从一个应用程序单向发送到另一个应用程序的最佳做法
- C++启动另一个程序(客户端-服务器)的程序
- 如何在 eclipse 中将标准输入从控制台更改为另一个程序
- 当电子的窗口隐藏时如何激活另一个应用程序窗口
- 与 Python 中子进程中的另一个应用程序的交互式会话
- 如何在另一个终端中打开并稍后关闭来自c ++的另一个程序?
- 将UWP应用程序的简单INT发送到另一个程序
- 如何将整个C Glut程序编写为可以在另一个程序中调用的函数
- osX - 如何从我的 QT 应用程序启动另一个程序