我在c中有以下代码:
execlp("ReturnValue.c");
ReturnValue.c应该返回0-3之间的整数,并且由于程序成功运行时execlp不会返回任何内容,那么如何获取该程序的返回值?
你可以这样做:
pid = fork();
if (pid == 0) {
execlp("ReturnValue.c", ...);
}
else if (pid > 0) {
waitpid(pid, &status, ...);
/* extract the return status */
WEXITSTATUS(status);
}
else { /* fork() error */ }
See waitpid(3) http://linux.die.net/man/3/waitpid or man 3 waitpid
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)