#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行中打印了什么值?
答案 0 :(得分:1)
你试过吗?
只创建单个子节点,父节点打印值5,因为它未在父进程中修改。全局变量在每个进程中都有一个副本,它们不会被共享。