我只是试图在两个进程之间共享一个整数,但是内存段在程序1中初始化并在程序4中使用。这里是程序1中的初始化:简单地在一个共享内存段中存储一个整数:C
shmid = shmget(key, sizeof(int*), 0666 | IPC_CREAT);
int *data = (int *)shmat(shmid, (void*)0,0);
这里我得到一个“从不同大小的整数转换为指针”的警告。哎呀。
简单,我假设,但我是一个与IPC的大时间noob。而在C许多其他的事情....
然后我把它传递到另一个程序:
snprintf(shmarg, sizeof(shmarg), "%n", data);
pid_t pid3 = run_cmd4("/home/tropix/hw11-4", shmarg, semarg, pipe_from_p2_2, pipe_to_p5_2);
不知道如何访问它的另一面,虽然。我怎样才能让程序4中的整数回归?
感谢那 :) – Josh 2011-05-09 03:57:56