编写两个进程a和b,利用共享内存技术,a向共享内存写字符串,b将从共享内存中读到的字符串在屏幕上打印出来。

创建一个共享内存
【编写两个进程a和b,利用共享内存技术,a向共享内存写字符串,b将从共享内存中读到的字符串在屏幕上打印出来。】

#include #include #include #include #include #include #include #include #include #include #include int main(int arg, char *args[]) { int shmid = shmget(IPC_PRIVATE, 1024, 0666); if (shmid < 0) { printf("error\n"); } else { printf("succes\n"); } shmat(shmid, NULL, ) return EXIT_SUCCESS; }

然后使用这个共享内存
#include #include #include #include #include #include #include #include #include #include int main(int arg, char *args[]) { char *shmbuf; int shmid = 0; if (arg > 2) { shmid = atoi(args[1]); shmbuf = shmat(shmid, 0, 0); if (atoi(args[2]) == 1) { scanf("%s", shmbuf); } if (atoi(args[2]) == 2) { printf("%s\n", shmbuf); } shmdt(shmbuf); } return 0; }




    推荐阅读