我想在我的C++程序中运行DOS命令。关键是我希望我的程序在执行DOS命令时停止。我已经使用“系统”API。我的问题是“是否系统”使一个新的线程/进程在其中运行DOS命令,或者它只是停止程序,直到命令完成?“ 如果它创建了一个新的进程,如何在'system'正在运行时停止程序?使用“system”API在C++程序中运行命令
非常感谢, Shadi。
我想在我的C++程序中运行DOS命令。关键是我希望我的程序在执行DOS命令时停止。我已经使用“系统”API。我的问题是“是否系统”使一个新的线程/进程在其中运行DOS命令,或者它只是停止程序,直到命令完成?“ 如果它创建了一个新的进程,如何在'system'正在运行时停止程序?使用“system”API在C++程序中运行命令
非常感谢, Shadi。
它创建一个新进程并等待它退出。
http://www.cplusplus.com/reference/clibrary/cstdlib/system/
Kyle是对的,它创建了新的进程并等待它退出。他给出的链接对于C++来说也是一个很好的参考。
如果您想在“系统”调用运行时停止程序,只需在您的DOS终端中执行Ctrl-C,程序将退出。
如果你不想让它阻塞,请考虑popen – frankc 2010-04-14 19:40:52