从指针的层次上理解函数——函数的函数名实际上就是一个指针,函数名指向该函数的代码在内存中的首地址

对此,我们写如下代码做测试:

int fun(int a) {
    return a;
}
int main() { 
    cout << fun(22) << endl;
    cout << (*fun)(33) << endl;
}

输出如下:

关于函数指针

 

char (*pFun)(int,char);     //定义函数指针 pFun,函数返回值类型为 char, 函数参数为 int,char
char fun(int a, char s){ return s;} 

int main() 
{ 
    pFun = fun;     //或者写为   pFun = *fun;
    cout << (*pFun)(1,'a') << endl; 
    cout << (*fun)(2, 's') << endl;
    cout << pFun(21, 'd') << endl;
    cout << fun(22, 'f') << endl;
}

输出为:

 关于函数指针

 

使用typedef定义函数指针

typedef char (*PTRFUN)(int); 
PTRFUN pFun; 
char glFun(int a){ return 's';} 
int main() 
{ 
    pFun = glFun; 
    cout << pFun(2); 
} 

 

参考链接;https://blog.csdn.net/qll125596718/article/details/6891881

相关文章:

  • 2021-07-13
  • 2021-05-27
  • 2022-12-23
  • 2022-12-23
  • 2021-12-05
  • 2021-04-19
  • 2021-08-12
猜你喜欢
  • 2021-04-05
  • 2021-05-24
  • 2022-12-23
  • 2021-12-05
  • 2021-05-10
  • 2021-09-29
  • 2021-07-26
相关资源
相似解决方案