【发布时间】:2021-01-28 11:01:35
【问题描述】:
我知道这个问题可能已经重复了很多次,但我不明白他们的答案。所以我们开始:
我有一个double* 类型的数组,它作为一个名为arr 的指针传递,数组的大小作为int arrsize 参数传递。现在,这里是我感到困惑的地方,我想使用参数val 对数组中的元素执行函数指针typeOfOper 指定的操作。
void fnOper(double *arr, int arrsize, void (*typeOfOper)(double*, int, const double), const double val);
我还有四个执行不同类型操作的函数(add、subtract、divide、multiply)。同样,根据传递的操作类型 (typeOfOper),该函数将执行其他四个函数之一。
如果有人可以指导我并让我知道我能做什么,我将不胜感激。感谢您的宝贵时间。
【问题讨论】:
-
不清楚这里的障碍是什么?我看没有真正的问题,你只是调用给定的函数吗?从一个函数开始构建示例
-
调用
fnOper时只需在参数中输入函数名称,不带括号。 -
我正在尝试学习如何将函数作为参数传递,所以这是我自己做的最简单的方法。