sharmmem.c
来自「linux下的进程通讯机制的代码例子。消息队列以及共享内存。」· C语言 代码 · 共 63 行
C
63 行
#include<sys/types.h>#include<sys/ipc.h>#include<sys/shm.h>#include<stdio.h>#include<stdlib.h>#include<unistd.h>#include<string.h>#define MYKEY 24int main(int argc,char *argv[]){ int shmid; int i; char *shmptr; char *shmptr1; pid_t pid; if(argc<2) { printf("please enter more than 1 chanshu\n"); exit(0); } if((pid=fork())==-1) perror("fork error\n"); else if(pid==0) { if((shmid=shmget(MYKEY,1024,IPC_CREAT))==-1) { perror("creat error\n"); exit(1); } if((shmptr=shmat(shmid,0,0))==(void*)-1) { perror("mat error\n"); exit(1); } for(i=0;i<argc-1;i++) { strcpy(shmptr,argv[1]); } while(1) { } } else { if((shmid=shmget(MYKEY,1024,IPC_CREAT))==-1) { perror("creat error\n"); exit(1); } if((shmptr1=shmat(shmid,0,0))==(void*)-1) { perror("mat error\n"); exit(1); } while(1) { printf("%s\n",shmptr1); sleep(1); } } }
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?