水下功夫做透,水上才能顺风顺水。

函数指针与数组指针

一.函数指针

函数指针就是指向函数的指针,可以用与函数指针类型对应的函数名赋值,可以用来调用函数。全局函数指针常用于回调(函数)。

(1)定义函数 int fun(int i,float k); 的函数指针变量。

  用指针变量代替函数名即可:int (*pfun)(int i, float k);

  进一步:

  int (*pfun[10])(int i, float k); //函数指针数组

  []第1优先级,从左到右。int (* (pfun[10]) )(int i, float k);

(2)声明函数 int fun(int i,float k); 的函数指针类型。

  用类型替换变量,前加typedef:typedef int (*Pfun)(int i, float k);

  如此便可定义函数指针变量 Pfun pfun = NULL;

  也可定义函数指针数组。

(3)以上类似

  int i;

  typedef int Interge;

  Interge i;

二.数组指针

数组指针其实是一种二级指针,其指向一维数组的地址。

int v[2][10];

int (*a)[10];//数组指针,指向一维数组的地址。

a = v;

 

 

  

posted @ 2015-02-27 11:05  北方寒士  阅读(164)  评论(0编辑  收藏  举报