对于C语言来说,我是新手,我对共享内存有一些疑问。
我使用其他.c来使用shm。
这是我创建内存的程序
int id = shmget( 1234, CONSTANT*sizeof(structure),IPC_CREAT | 0666 );
exit_on_error (id, "Error");
所以我的问题是我如何在另一个程序中访问此内存并知道“常量”
我有这样的东西
int id = shmget(1234, 0,0);
exit_on_error (id, "Error");
*/structure pointer*/ sp = (structure*) shmat(id,0,0);
exit_on_null (structure pointer,"Error");
但是现在我需要该常量以迭代结构的“对象”的数量并编辑对象
答案 0 :(得分:0)
有一个函数 shmctl(),该函数接受命令 IPC_STAT ,并填充描述该对象的结构 shmid_ds 。