1、函数指针的概念
一个函数在编译时,被分配了一个入口地址,这个地址就称为该函数的指针。 可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数。
2、指向函数的指针变量
(1)定义格式 函数返值类型 ( *指针变量 )( );
注意:“*指针变量”外的括号不能缺,否则成了返回指针值的函数。
例如,int (*fp)( ); /* fp为指向int函数的指针变量*/
(2)赋值
函数名代表该函数的入口地址。可用函数名给指向函数的指针变量赋值。
指向函数的指针变量=[ & ]函数名;
注意:函数名后不能带括号和参数;函数名前的“&”符号是可选的。 (3)调用格式 (*函数指针变量)([实参表]) 3、指向函数的指针变量作函数参数 指向函数的指针变量的常用用途之一,就是将函数指针作参数,传递到其它函 数。函数名作实参时,因为要缺省括号和参数,造成编译器无法判断它是一个 变量还是一个函数,函数说明的格式与其他函数一样。 注意:对指向函数的指针变量,诸如p+i、p++/p--等运算是没有意义的。
|