#include<sys/ipc.h> #include<sys/shm.h> #include<sys/types.h> #include<stdlib.h> #include<unistd.h> #include<stdio.h> int main() { int shmid,*shmaddr,shmclr; shmid=shmget(IPC_PRIVATE,2048,0666); if (shmid<0) { perror("shmget error"); exit (1); } printf("creat share memory %d is successful/n",shmid); system("ipcs -m "); shmaddr=shmat(shmid,0,0); if (shmaddr<0) { perror("shmat error/n"); exit (1); } printf("attach share memory is successful/n"); system("ipcs -m "); shmclr=shmdt(shmaddr); if (shmclr<0) { perror("shmdt error/n"); exit (1); } else { printf("clear share memory complete/n"); system("ipcs -m"); } return(0); } note:创建一贡献内存 然后删除它 过程前中后 分别用 ipcs -m 查看变化