以下代码中创建了多少个子进程

时间:2016-10-25 04:18:37

标签: c process operating-system fork child-process

#include <sys/types.h> 
#include <stdio.h> 
#include <unistd.h> 

int value = 5; 
int main() 
{
    pid t pid; 
    pid = fork(); 
    if (pid == 0) {
    value += 15;
    return 0;} 
    else if (pid > 0) { /* parent process */ 
       wait(NULL);
     printf("PARENT: value = %d",value); /* LINE A */
                 return 0;}}

创建了多少子进程以及在A行中打印了什么值?

1 个答案:

答案 0 :(得分:1)

你试过吗?

只创建单个子节点,父节点打印值5,因为它未在父进程中修改。全局变量在每个进程中都有一个副本,它们不会被共享。