|
楼主 |
发表于 2005-7-1 18:09:36
|
显示全部楼层
多谢kakuyou 我写了注释,看看我的理解是不是正确!*^_^*
#include <stdio.h>
#include <stdlib.h>
#include <sys/ipc.h>
#include <sys/shm.h>
int main(int argc, char** argv)
{
int mid;
void* maddr = NULL;
mid = shmget(0x00001000, 512, IPC_CREAT|0666); //生成一块内存
if(mid == -1)
exit(-1);
maddr = shmat(mid, NULL, 0);
//让指针maddr只向这个块内存 NULL, 0 什么意思不知道
if((int)maddr == -1)
exit(-2);
if(argc > 1)
strcpy(maddr, argv[1]); //将参数写入共享内存,如果我直接写一个变量进去可以不?
else
fprintf(stdout, "%s\n", maddr);
return 0;
}
高手,请多指教!!!*^_^* |
|