【发布时间】:2013-08-22 07:56:30
【问题描述】:
我想使用 system() 从 C 程序中执行一些可执行文件。我要确保命令完全执行;之后,我想使用之前执行的命令的输出。例如:
{
...
...
sprintf(cmd, "./a1.out > temp.txt");
system(cmd);
fp = fopen("temp.txt", "r");
...
...
}
在此示例中,不能确保在打开文件以供读取之后完全执行 cmd。而且,我想确保这一点。有什么帮助吗?
【问题讨论】:
-
当
system返回时,您检查它返回的内容。如果它返回-1则有错误。否则程序的主进程已经运行了它的全部过程。 -
System() 如果执行失败,则返回 -1。阅读docs
标签: c system-calls