[英]Is there a way to open a new terminal window with code in C++?
我有一个应用程序,我希望它以某种方式打开一个新的命令行 window 进行输入。 有没有办法用 C++ 做到这一点?
要打开终端或任何其他进程,您需要调用它。
例如,我使用 ubuntu 操作系统和打开终端如果我说gnome-terminal
,它将在我运行我的程序时打开它。
这是那个代码:
#include <cstdlib>
int main()
{
std::system("gnome-terminal");
return 0;
}
对于 windows,您应该调用您的 cmd 流程。 意味着您需要编写cmd
或您的进程名称,而不是gnome-terminal
在这种情况下,我不确定您的“应用程序”是什么。 但是,为了使应用程序相互交互,通常我们需要某种 API(应用程序编程接口),以便您在另一个应用程序(如您所说的新终端)上拥有的东西可以在“主”应用程序中正确使用.
如果您想要的结果只是打开另一个终端,我们只需调用它。 但是请记住,每个操作系统都有自己的方式来打开终端,所以如果你想自动化一切,我们必须使用macros
来检查用户的当前操作系统,这里有一个建议:
#include <cstdlib>
int main()
{
#ifdef _WIN32
std::system("start program.exe");
// program.exe is app you have built to get input.
#endif
#ifdef _WIN64
std::system("start program.exe");
#endif
#ifdef __APPLE__
std::system("open program");
#endif
#ifdef __linux__
std::system("open program");
#endif
// #ifdef and #endif are just like if - statement.
}
每个编译器都有macros
,例如_WIN32
- 代表 windows 32 位, _WIN64
-windows 64 位等等。 使用它们非常方便。
希望这可以帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.