linux多个子进程共享内存通信 c语言 用shmget或mmap 20

码了半天一直错,求大神码一个例子来看,框架是这样的:intrc=0;voidmain(){if(fork()==0){rc++;printf("%d",rc);}else... 码了半天一直错,求大神码一个例子来看,框架是这样的:
int rc=0;
void main()
{
if(fork()==0)
{
rc++;
printf("%d",rc);

}
else if(fork()==0)
{
rc+=2;
printf("%d",rc);
}
else
{
printf("%d",rc);

}

}
把上面的rc用共享内存实现,现在这样输出是1,2,0或2,1,0吧?(跟顺序有关系)
我想要输出是1,3,3,或2,3,3的,要完整代码……
展开
 我来答
heptnaol
2014-12-01 · TA获得超过7261个赞
知道大有可为答主
回答量:7120
采纳率:78%
帮助的人:1810万
展开全部
借个取决于那个进程先运行,结果是不确定的
或许需要用semget获取信号灯来同步,来保证执行的顺序
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式