[問題] fork (parent 和 child變數傳遞的問題)
遇到的問題: (題意請描述清楚) 沒辦法用一個共用變數來傳遞訊息?
#include <sys/types.h>
#include <stdio.h>
#include <unistd.h>
#include<sys/wait.h>
int *p ;
int value=0;
int main(){
p = &value;
int pid, pid1;
pid = fork();
if (pid <0 ){
return 1;
}
else if (0 == pid){
printf ("child: %d\n", *p);
*p += 1;
}
else{
wait(NULL) ;
printf ("parent %d\n", *p);
}
}
想請問我沒有辦法用一個共用變數 來傳遞child和parent間的資料嗎?
我知道fork會複製一份parent的資料來做
可是我的變數 p 不是應該記錄著 value 的address嗎?
新手一問 請大家多多見諒...@@
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.251.224.160
→
10/09 01:02, , 1F
10/09 01:02, 1F
→
10/09 01:03, , 2F
10/09 01:03, 2F
→
10/09 01:07, , 3F
10/09 01:07, 3F
→
10/09 01:21, , 4F
10/09 01:21, 4F
→
10/09 01:32, , 5F
10/09 01:32, 5F
→
10/09 01:33, , 6F
10/09 01:33, 6F
→
10/09 01:36, , 7F
10/09 01:36, 7F
→
10/09 01:36, , 8F
10/09 01:36, 8F
→
10/09 01:36, , 9F
10/09 01:36, 9F
推
10/09 01:54, , 10F
10/09 01:54, 10F
→
10/09 08:50, , 11F
10/09 08:50, 11F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章