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

📄 server.c

📁 进程间通信的实验代码
💻 C
字号:
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <signal.h>#include <sys/msg.h>#include <sys/ipc.h>#include "message.h"int msqid=-1;void sig_handle(int signo){	if (msqid!=-1)		msgctl(msqid,IPC_RMID,NULL);        printf("server quit...\n");	exit(0);}int main(){	struct mymsgbuf msgbuf;	int left,right;	char c;        int length;	if ((msqid=msgget(999,0666))!=-1)	{		msgctl(msqid,IPC_RMID,NULL);	}	if ((msqid=msgget(999,IPC_CREAT|0666))==-1)	{		printf("error:getmsg\n");		exit(1);	}	signal(SIGINT,sig_handle);  /*LINUX-CTRL-D*/	for (;;)        {	   if (msgrcv(msqid,&msgbuf,256,1L,0)==-1)	   {	      	printf("error:msgrcv\n");		    exit(1);	   }             printf("Receive message :\n");	   printf("\tid:\t %s\n",msgbuf.student.id);	   printf("\tname:\t %s\n",msgbuf.student.name);	   printf("\tage:\t %d\n",msgbuf.student.age);	   printf("\tEmail:\t %s\n\n",msgbuf.student.e_mail);        }       	msgctl(msqid,IPC_RMID,NULL);	exit(0);}

⌨️ 快捷键说明

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