⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ser_c.c

📁 Linux大学上机源码学习
💻 C
字号:
#include <sem_op.h>main(){ struct exchange{    char buf[BUFSIZ+80];    int seq; }shm; int shmid; unsigned char *retval; int producer,consumer,i; consumer=open_semaphore_set(ftok("consumer",0),1); init_a_semaphore(consumer,0,1); producer=open_semaphore_set(ftok("producer",0),1); init_a_semaphore(producer,0,1); shmid=shmget(ftok("shared",0),sizeof(struct exchange),0666|IPC_CREAT); retval=shmat(shmid,(unsigned char *)0,0); for(i=0;;i++){   printf("enter some text:");   fgets(readbuf,BUFSIZE,stdin);   semaphore_P(consumer);   shm->seq=i;   sprintf(shm->buf,"message %4d from producer%d is\"%s\"\n",i,getpif(),readbuf);   semaphore_V(producer);   if(strcmp(readbuf,"end",3)==0)       break;}exit(0);}    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -