指针函数
指针函数:指针函数是一个函数,返回值是一个指针。
int *fun; //fun是指针变量
int *fun(x,y); //fun是指针函数;
#include<iostream>
using namespace std;
char* day_name()
{
return("Monday"); //返回地址
}
int main()
{
char *p = day_name();
printf("%s\n", p);
}
函数指针
函数指针是指向函数的指针变量,本质是一个指针。
格式: 返回值类型 (*函数名) (参数)
int (*fp)(int x) ;
fp=fun; //将fun()函数首地址传给指针变量fp。
#include<iostream>
using namespace std;
int add_fun(int x, int y)
{
return x + y;
}
int main()
{
int(*fun1)(int, int);
fun1 = add_fun;
int res = fun1(3, 6);
cout << res << endl;
}
指针函数与函数指针的区别:
- 指针函数本质为一个函数,返回类型为一个指针;
- 函数指针本质为为一个指针,指向一个函数;
参考链接浅谈指针函数和函数指针