【发布时间】:2011-08-15 15:01:00
【问题描述】:
static void increment(long long *n){
(*n)++;
}
struct test{
void (*work_fn)(long long *);
};
struct test t1;
t1.work_fn = increment;
我现在如何实际调用该函数? t1.work_fn(&n) ?
【问题讨论】:
-
是的,函数指针的作用类似于常规函数。一个势利的答案是:你为什么不试试看呢? :)
-
你试过了吗?结果是什么?真的,编写代码、运行它、测试它、在调试器中观察它都没有错。
-
@abelenky:有,如果你不确定你是依赖未定义的行为,还是非标准的语言扩展等。