使用AND和OR运算的fork

时间:2015-09-12 17:27:43

标签: c fork

您好我很难理解下面的代码 - 我试图将其分解并理解但仍然没有运气 -

/ *下面的代码打印20次printf * /

int main()
{
    if (fork() && fork())
    {
        fork();
    }

    if (fork() || fork())
    {
        fork();
    }

    printf("hello world\n");

    return 0;
}

/ *如果我打破并且只打印AND部分 - 它会打印4个hello world - 如果我假设使用AND操作只有1个fork执行了哪种有意义* /

int main()
{
    if (fork() && fork())
    {
        fork();
    }

    printf("hello world\n");

    return 0;
}

/ * OR操作如何工作 - 打印5 Hello World ?? * /

int main()
{
    if (fork() || fork())
    {
        fork();
    }

    printf("hello world\n");

    return 0;
}

我也经历了SO网站的以下参考文献,但仍然无法想出这一点

Understanding the fork() command Posix API

Working of fork() in linux gcc

0 个答案:

没有答案