Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 有多少个进程,带有fork函数?_C_Variables_Process_Operating System_Fork - Fatal编程技术网

C 有多少个进程,带有fork函数?

C 有多少个进程,带有fork函数?,c,variables,process,operating-system,fork,C,Variables,Process,Operating System,Fork,使用这些fork函数创建了多少个进程 int main(){ c2=0; c1=fork(); if(c1==0) c2=fork(); fork(); if(c2>0) fork(); } 在这个网站上,我以前看到过与fork函数相关的问题,但这个不同。这里我们有c1,c2,这些变量意味着什么?解决这个问题的方法是画一棵树。fork()调用的组合将创建具有父/子关系的进程树 您需要考虑的一点是fork()在父进程中返回PID

使用这些fork函数创建了多少个进程

int main(){
    c2=0;
    c1=fork();
    if(c1==0)
       c2=fork();
    fork();
    if(c2>0)
    fork();
}

在这个网站上,我以前看到过与fork函数相关的问题,但这个不同。这里我们有c1,c2,这些变量意味着什么?

解决这个问题的方法是画一棵树。fork()调用的组合将创建具有父/子关系的进程树

您需要考虑的一点是fork()在父进程中返回PID,在子进程中返回0。你在哪里

 if (cm > 0)
    ford () ;
将仅在父进程中执行

   if (cn == 0)
      fork () ; 

将只在子进程中执行。

我认为这个问题不值得向下投票

c2 = 0;
   c1 = fork();      /* fork number 1 */
   if (c1 == 0)
      c2 = fork();   /* fork number 2 */
   fork();           /* fork number 3 */
   if (c2 > 0)
      fork();        /* fork number 4 */
它的图表是,


为什么不试试呢?我试过了,这就是我问的原因。为什么负-??我不能理解你。不知道是犯罪吗?现有的问题,如and(和其他你可以通过搜索“c fork”找到的问题,还有fork的手册页)解释了fork的功能。这里的代码不完整,无法编译<未声明代码>c1和
c2
。如果你看fork文档和其他问题,你会看到fork返回什么,你可以声明c1和c2为什么类型,程序运行时它们将采用什么值。我在讲座中只复制了我老师的笔记。事实上我知道c1和c2必须有一个类型,我知道C语言。我的老师没有写他们的类型,问题是。事实上,我有答案,我可以上传到这里。最后,我不明白,虽然老师在问这个问题的时候解决了这个问题。