typedef struct
{
char name[24]
char age[8]
}student;
typedef struct
{
long msgtype
student stu
}msginfo;
#define MSGSZ(sizeof(msginfo)-sizeof(long))
int main(int argc, const char *argv[])
{
key_t key;
if((key=(ftok("/",'a')==-1)
{
perror("ftok error");
return -1;
}
int msgid;
if((msgid=msgget(key,IPC_CREAT|0664)==-1)
{
perror("msgget error");
retuen -1;
}
msginfo msg={.msgtype=10};
while(1)
{
printf("请输入个人信息\n");
fgets(msg.stu.name,sizeof(msg.stu.name),stdin);
fgets(msg.stu.age,sizeof(msg.stu.age),stdin);
msg.stu.name[strlen(msg.stu.name)-1]='/0';
msg.stu.age[strlen(msg.stu.age)-1]='/0';
if((msgsnd(msgid,&msg,MSGSZ,0))==-1)
{
perror("msgsnd error");
return -1
}
return 0;
typedef struct
{
char name[24]
char age[8]
}student;