超详细的函数指针
函数指针基础 使用函数指针一般要实现: 1)获取函数地址 2)声明函数指针 3)使用函数指针调用函数 ( 1 )获取函数地址 : 直接使用函数名(函数名就是地址),比如调用think()函数: show_array ( think ) ; ( 2 )声明函数指针 int sum ( int n ) ; //(1式) int ( * p ) ( int n ) ; //(2式) p = sum ; 2 式中 ( * p ) 必须加括号, ( * p ) 相当于 1 式中的sum,那么p就是指向sum ; 否则,p函数返回的是一个指针。 ( 3 )调用函数 接着( 2 )中的示例: int x = sum ( 2 ) ; int x = ( * p ) ( 2 ) ; //这两句话是一样的! 深入探讨函数指针 int arr [ 3 ] = { 6 , 2 , 1 } ; //三个函数声明(返回类型和参数形式都是一样的): const int * f1 ( const int arr [ ] , int n ) ; const int * f2 ( const int * arr , int n ) ; const int * f3 ( const int arr [ ] , int n ) ; const int * f1 ( const int arr [ ] , int n )