c - Ansi C - 函数期望指向数组的指针

标签 c arrays pointers ansi

我在 ANSI C 中编写程序,并且有一个函数,其中我将指针传递给信号量数组 struct sembuf semb[5]

现在该函数的 header 如下所示:

void setOperations(struct sembuf * op[5], int nr, int oper)

但是我收到警告:

safe.c:20: note: expected ‘struct sembuf **’ but argument is of type ‘struct sembuf (*)[5]’

如何解决这个问题?

编辑
调用:

setOperations(&semb, prawa, -1);

最佳答案

如果您想将指针传递给数组而不是指针数组,那么函数应该这样声明:

void setOperations(struct sembuf (*op)[5], int nr, int oper);

关于c - Ansi C - 函数期望指向数组的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13379164/

相关文章:

c - openSSL 示例中的 SSL 接受错误

c - 如何打印编号给定整数可以用不同数字的总和来表示的方式?

我可以通过 char* 指针访问 int 变量的每个字节吗?

c - 什么是指向整数数组的指针

c - 如何转换日期格式: 2019-08-22 16:16:08] to the format: aammjjhhmmss in C language

const char const *char[] 编译器警告

java - 运行时指定的数组/ArrayList 的维数

javascript - 使用递归的范围,如何输出新数组Javascript

java - 从上一个循环获取一个值以在当前循环中使用

c - 打印指针到指针