mar*_*xin 1 c arrays pointers ansi
我在ANSI C中编写程序,并且有一个函数,其中im传递指向信号量数组的指针struct sembuf semb[5].
现在该函数的标题如下所示:
void setOperations(struct sembuf * op[5], int nr, int oper)
Run Code Online (Sandbox Code Playgroud)
但我得到警告:
safe.c:20: note: expected ‘struct sembuf **’ but argument is of type ‘struct sembuf (*)[5]’
Run Code Online (Sandbox Code Playgroud)
如何解决这个问题?
编辑
通话:
setOperations(&semb, prawa, -1);
Run Code Online (Sandbox Code Playgroud)
如果要将指针传递给数组而不是指针数组,则应该如何声明函数:
void setOperations(struct sembuf (*op)[5], int nr, int oper);
Run Code Online (Sandbox Code Playgroud)