meaning的形容词是什么:共享主存

来源:百度文库 编辑:中财网 时间:2024/05/02 07:33:37

/******write.c******/
# include
# include
# include
# include
typedef struct{
 char name[4];
 int age;
} people;

main(int argc,char** argv)
{
 int shm_id,i;
 int shmdt_id;
 key_t key;
 char temp;
 people *p_map;
 char* name = ".";
 key = ftok(name,0);
 if (key == -1)
 {
  perror("ftok error");
  return;
 }
 shm_id = shmget(key,4096,IPC_CREAT); //调用shmget创建一块共享主存区
 if (shm_id == -1)
 {
  perror("shmget error");
  return;
 }
 p_map = (people*)shmat(shm_id,NULL,0);//将共享主存区附加到自己的主存段
 temp = 'a';
 for (i = 0 ;i < 10 ; i++ )   //向共享主存中写入数据
 {
  temp = temp + 1;
  memcpy((*(p_map + 1)).name,&temp,1);
  (*(p_map+i)).age = 20 + i;
 }
 shmdtid = shmdt(p_map);  //将其从自己的主存段中“删除”出去
 if(shmdtid == -1)  //删除失败
 {
  perror("detach error");
  return;
 }
}