gpt4 book ai didi

c - 程序无限循环

转载 作者:行者123 更新时间:2023-11-30 17:21:17 25 4
gpt4 key购买 nike

我的进程中调用分配的组件之一似乎正在运行无限循环,我不知道为什么。这似乎是问题所在

D=fork();
if (D==0)execv("/home/8/myfiles/DD.c",arg);


while(temp != 4){ //return value of D is 4
A = wait(&temp);}
exit(1);

代码的目标是等待 D 终止。就像评论所说,D 以“exit(4);”结尾据我所知,这意味着当它执行时 temp 将被分配为 4,对吧?或者我在这里做错了什么。

最佳答案

wait() 返回到 temp 的值不会返回已退出应用程序的退出状态;它返回一个打包值,其中包括退出代码(如果适用)。

使用 the manual page for wait() 中定义的宏,例如 WIFEXITED()WEXITSTATUS(),以确定状态代码的含义。请记住,如果您的子进程异常终止(例如崩溃),wait() 可能会返回一个与您希望的值不同的值。

关于c - 程序无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28336518/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com