天天看点

函数指针简单的列子

关于函数指针的简单例子

函数指针简单格式如下:

int (*p)(int i, char c)

首先它是一个指针,其次它是指向一个函数地址的指针,再次这个函数的返回值为int数值.

#include

using namespace std;

int rep(int i, char c);

int repa(int (* p)(int i, char c));

int main(void)

{

        int (*p)(int i, char c); //定义一个和rep相同格式的函数指针

        //这里可以if如果定义了多个函数可以进行选择,这里简单说明

       p=rep; //将p指针指向rep函数的地址rep                  

        repa(p); //调用repa函数进行实际的赋值了操作

}

int repa(int (* p)(int i, char c)) //定义函数repa形参为rep格式相同的函数指针

        cout<<'loop start!'<<ENDL;

       (*p)(10,'a'); //p(10,'a');也可以实际就是调用rep做实际的处理

        return 0;

int rep(int i, char c)            //定义一个简单的函数

        while(i-->0)

        {

            cout << i <<ENDL;

            cout << c <<ENDL;  

        }