阿里校招——fork进程问题

不算main这个进程自身,到底创建了多少个进程啊?

int main(int argc, char* argv[])
{
   fork();
   fork() && fork() || fork();
   fork();
}

A.18
B.19
C.20
D.21

答案为B

考查两个点
1、A&&B||C
A为假,跳过B,判断C
A为真,判断B,若B为真,跳过C
若B为假,判断C
2、fork()函数父进程返回子进程ID;子进程返回0

第一条语句新增1个
第二条语句新增4*2个

这里写图片描述

第三条语句,此时已有进程1+1+4*2个,所以新增10个

总共进程数为10+9=19(注意:这里不算main进程)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值