stdlf
分类:
2010-01-26 14:47:59
1.指向函数的指针定义
int func(int x); /* 声明一个函数 */
int (*f) (int x); /* 声明一个函数指针 */
f=func; /* 将func函数的首地址赋给指针f */
赋值时函数func不带括号,也不带参数,由于func代表函数的首地址,因此经过赋值以后,指针f就指向函数func(x)的代码的首地址。
注:函数指针f和它指向的函数func的参数个数和参数类型—致;
函数指针f的类型和函数func的返回值类型(int)也必须是一致的。
----------------------------------------------------
通过函数指针调用函数:
p指向a;=>*p=a;同理
f指向func(x)=>f=func
2.返回指针的函数:
int *f(x,y); //调用后返回一个指向整型数据的地址指针,f(x,y)是函数,其值是指针
########################################################################
指针数组是指一个数组中的每个元素都是一个指针
如:int *p[10] //此时p是一个指针,数值上和&p[0]一样
int *p=t;//指针p指向t
指向数组的指针:
int (*p)[10];指针指向数组的首地址。