2个回答
展开全部
发文字版的,图片太麻烦
更多追问追答
追问
一个父进程,创建两个子进程(子进程A和子进程B),子进程B创建一个孙子进程,要求:
父进程打印:This is father process;
子进程A打印:This is Child A process;
子进程B打印:This is Child B process, 并打印自己的PID号;
孙子进程打印:This is GrandChild process, 并打印其父进程的PID号;
追答
我说你的代码,文字版
来自:求助得到的回答
展开全部
你这里有以下几个错误:
1 while后面不能直接跟分号
while((pida=fork())==-1);
2 while条件错误了
while((pida=fork())==-1);循环体里面的代码永远不会被执行
因为fork只要不出错,肯定不会返回-1
结果就是while条件不成立,进而失败
其他编码风格上的问题:
1 请对齐代码,现在这样根本看不懂
2 while后面的循环体,请用大括号,否则极易产生各种稀奇古怪的问题
1 while后面不能直接跟分号
while((pida=fork())==-1);
2 while条件错误了
while((pida=fork())==-1);循环体里面的代码永远不会被执行
因为fork只要不出错,肯定不会返回-1
结果就是while条件不成立,进而失败
其他编码风格上的问题:
1 请对齐代码,现在这样根本看不懂
2 while后面的循环体,请用大括号,否则极易产生各种稀奇古怪的问题
更多追问追答
追问
while((pida=fork())==-1);这个我觉得就是为了让它的子进程创建成功,我也不是很清楚o(︶︿︶)o
追答
应该是while( (pida=fork()) != -1)
表示创建成功,则进行下面的代码
要么就是if
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询