今天刚好需要用到通过数组中的函数指针来调用函数,所以就写了了一个例子,但是遇到了问题。
在程序运行后,就是得不到结果。
一开始,我以为你是 add_table函数调用失败,后来我验证后发现还是调用了,只是没有得到实际结果。
始终没找到原因。
大家帮我看看,有没有什么想法。
程序源码:
#include <stdio.h> //double yy; double add1(double x, double y) { return x + y; } double add2(double x, double y) { return x - y; } void add_table(double x, double y, double(**p)(double, double)) { printf("add_table...\n"); printf("add1 = \n",(*p[0])(x,y)); printf("add2 = \n",(*p[1])(x,y)); } int main() { int x = 2,y = 1; double (*pf[2])(double, double) = {add1,add2}; add_table(x,y,pf); return 0; }
我的运行结果:
add_table add1 = add2 =
通过数组中的函数指针来调用函数,不知道为什么得到结果
最新推荐文章于 2023-05-22 07:30:00 发布