首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

共享内存段异常,就几行代码

2012-04-03 
共享内存段错误,就几行代码int main(int argc,char **argv){int shm_idchar *p_mapshm_idshmget(IPC_PR

共享内存段错误,就几行代码
int main(int argc,char **argv)
{
  int shm_id;
  char *p_map;
  shm_id=shmget(IPC_PRIVATE,1024*5,IPC_CREAT);
  if(shm_id<0)
  {
  perror("shmget error");
  return;
  }
  p_map=(char *)shmat(shm_id,NULL,0);//映射内存
  if (p_map==NULL)
  {
  perror("shmget error");
  return;
  }  
  *p_map='a';// 此句出现段错误,上面不是分配了内存了吗
   
  if(shmdt(p_map)<0)
  perror("detach error");  
  return 0;
}
第一次用共享内存,各位指教下

[解决办法]
是不是缺少权限
试试
shm_id=shmget(IPC_PRIVATE,1024*5,IPC_CREAT|0666);

热点排行