这个语法正确吗?
cmp
是指向函数的指针。我的程序中的一切正常,但是:
- 看 !我在函数中
*
声明时没有使用。cmp
为什么我的代码有效? - 当我用
int (*cmp)
一切声明它时,效果也很好。
这里发生了什么 ??
RangeTreeP createNewRangeTree(Element participateWorkers[], int arrsize,
int cmp(ConstElement, ConstElement))
不应该是:
RangeTreeP createNewRangeTree(Element participateWorkers[], int arrsize,
int (*cmp)(ConstElement, ConstElement))
?
对该createNewRangeTree
函数的调用是:
createNewRangeTree(tempArr, NUM_PAR, &teacherCmpSalary)
并且teacherCmpSalary
是一个看起来像这样的常规函数:
int teacherCmpSalary(ConstElement c1, ConstElement c2)