📄 971104-1.c
字号:
typedef unsigned short ushort;struct sembuf { ushort sem_num; short sem_op; short sem_flg; };union semun { int val; struct semid_ds *buf; ushort *array; struct seminfo *__buf; void *__pad;};static union semun semctl_arg;static int semid;static void up(int sem){ struct sembuf sb; sb.sem_num = (unsigned short) sem; sb.sem_op = 1; sb.sem_flg = 0x1000 ; if(semop(semid, &sb, 1) == -1) error("up failure"); if(semctl(semid, sb.sem_num, 12 , semctl_arg) == 0) printf("%s had processes sleeping on it!\n", ({ "MUTEX ", "BARB_SEM 1", "BARB_SEM 2", "CUST_SEM 1", "CUST_SEM 2", "WAIT_SEM 1", "WAIT_SEM 2", "WAIT_SEM 3", "WAIT_SEM 4"} /* { dg-error "(parse|syntax) error" } */ [( sb.sem_num )]) );}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -