我正在使用以下简单代码重新学习C语言中的函数指针:
unsigned TestFn(unsigned arg)
{
return arg+7;
}
unsigned Caller(unsigned (*FuncPtr)(unsigned), unsigned arg)
{
return (*FuncPtr)(arg);
}
我使用以下方式调用它:
Caller(TestFn, 7) //and
Caller(&TestFn, 7)
两种方式得到了相同的输出结果: 14。这是什么解释呢?我之前一直在使用第二种调用方式。