指针函数
——返回值是为地址,若要调用该地址的数据,则需要该函数前加‘*’
#include <iostream>
using namespace std;
int *GetNum(int x); //指针函数声明形式
void main(void)
{
int num;
cout<<"输入0~6之间的数据: ";
cin>>num;
cout<<"result is( GetNum(num)——指针函数返回的地址) :"<<GetNum(num)<<endl; //输出返回地址块中的值
cout<<"result is(*GetNum(num)——指针函数返回的地址中的数据):"<<*GetNum(num)<<endl; //输出返回地址块中的值
}
int *GetNum(int x)
{
int num[]={0,71,72,13,24,35,26};
return &num[x]; //返回一个地址
}
函数指针
——指向函数,在函数调用时,可以用(* 函数指针名)代替被调用的函数名
#include <iostream>
using namespace std;
int max(int a, int b)
{
return a>b?a:b;
}
void main(void)
{
int (*func)(int,int); //定义该函数指针变量,注意括号不能缺
func=max; //函数指针指向函数max,即在以后的调用中可以用(*func)代替max
int a,b;
cout<<"输入两个数:";
cin>>a>>b;
cout<<"两个数的最大值为="<<(*func)(a,b)<<endl; //运用指针变量调用函数
}