使用信号量和 POSIX 线程进行 OS 编程分配。这是我的代码:
#include <pthread.h>
#include <semaphore.h>
sem_t mutex, to_b, to_a;
int main()
{
// Initialize semaphores
sem_init(&mutex, 0, 1);
sem_init(&to_b, 0, 0);
sem_init(&to_a 0, 0);
}
用我编译gcc main.c -lpthread
得到:
main.c: In function 'main':
main.c:11:24: error: expected ')' before numeric constant
main.c:11:24: error: too few arguments to function 'sem_init'
/usr/include/semaphore.h:37:12: note: declared here
知道是什么原因造成的吗?我肯定正确地调用了 sem_init 。