1.指針函數
int* f(int a,int b);
指針函數,它是函數,函數的返回值是int型的指針,在函數調用時,賦值的變量也必須是Int型指針,調用實例
Int* p=NULL;
p=f(a,b);
2.函數指針
函數指針,字面上理解它是一種指針,就像int指針一樣,只不過函數指針指向的是函數,而不是變量。
int(*f)(int a,int b);//函數指針的聲明
調用實例
int Fun1(int a ,int b)//函數1-求和
{
return a+b;
}
int Fun2(int a,int b)//函數2-求差
{
return a-b;
}
int(*f)(int a,int b);//函數指針聲明
int main()
{
f=Fun1;//函數指針f指向Fun1
int c= (*f)(6,8);
f=Fun2://函數指針f指向Fun2
int d=(*f)(12,10);
}
函數指針的用法在linux源碼中很常見,用起來也很方便。常見的函數指針如 typedef void(*func)(void)