我一直在從函數參數中獲取函數指針。 下面是我想要做的一個例子。如何從C函數參數中檢索函數?
int a(int I)
{
return I*I;
}
void get_a(int(*R)(int))
{
R = &a;
}
int main()
{
int(*function)(int) = NULL;
printf("function a=%p\n", a);
get_a(function);
printf("function a=%p\n", &function); // Is never the right address.
return 0;
}
搜索網沒有幫助,我只能找到傳遞函數爲參數的例子,所以我放棄了,並試圖通過自己解決這個問題。
這與「如何從函數參數中檢索int」沒有區別。首先解決這個問題,你也會理解這個問題。 –
您的函數get_a()完全不做任何事情,因爲它所做的只是將其分配給本地變量,然後不返回任何內容。一個好的編譯器甚至可以完全優化它。 –