c - 在 shmat() 中删除了标识符
问题描述
这是我的代码的一部分。运行时,出现错误。它是“删除标识符”。我正在添加我的输出。
#define SEMKEYPATH "/dev/null"
typedef struct myStruct3 {
struct myStruct3* next=NULL;
}mainList;
mainList* shared;
int main(){
key_t KEYSHM=ftok(SEMKEYPATH,17);
int cid;
if(cid=shmget(KEYSHM, sizeof(mainList), IPC_CREAT|S_IRUSR | S_IWUSR) < 0) perror("1----:");
if((shared=(mainList*)shmat(cid,NULL,0))==(mainList*) -1) perror("2----:");
printf("memory: %d\n",cid);
}
''' 输出,
2--- Identifier removed
memory: 0
没有关于 perror 1''' 的输出
解决方案
推荐阅读
- php - 未捕获的错误:不能使用 stdClass 类型的对象作为数组
- python - 对象没有“附加”属性?
- session - 无法在对服务器的后续请求中使用 Gorilla Sessions 持久化数据
- python - 如何在 sklearn 中为算法使用 sample_weight 参数
- node.js - 在节点 js 服务器中部署我的 Angular 应用程序的问题
- c# - 从 C# 调用 Azure powershell cmdlet
- python - 每天查找唯一的时间戳
- python - 使用 BeautifulSoup 和 Python 提取 iframe
- javascript - jQuery css() 函数不适用于 css 属性列(动态内容)
- r - 有人可以解释 ggplot 和 geom_point 之间的区别吗?