我有:
int array_id;
char* records[10];
// get the shared segment
if ((array_id = shmget(IPC_PRIVATE, 1, 0666)) == -1) {
perror("Array Creating");
}
// attach
records[0] = (char*) shmat(array_id, (void*)0, 0);
if ((int) *records == -1) {
perror("Array Attachment");
}
效果很好,但是当我尝试分离时,出现“无效参数”错误。
// detach
int error;
if( (error = shmdt((void*) records[0])) == -1) {
perror(array detachment);
}
有任何想法吗?谢谢你