arg.val = 1;
if (sem_id = semget(IPC_PRIVATE, 1, 0600 | IPC_CREAT) == -1){
perror("Creating semaphore failed");
exit(1);
}
else {
printf("Creating a semaphore with ID: %d \n",sem_id);
if (semctl(sem_id, 0, SETVAL, arg) == -1) {
perror("Initialization of semaphore failed\n");
exit(1);
}
}
我試圖創建和初始化一個信號,當我編譯我的程序,它返回我:
「旗語的初始化失敗 :標識符刪除信號初始化
你能解釋一下我的之所以出現這種情況?
您在if語句中缺少右括號。 –
我只是忘記了!對不起!你能注意到別的東西錯了嗎? – marymary