参考书目:C/C++规范设计简明教程,P280
//10_6_1 函数指针
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <stdio.h>
#include <math.h>
#include <string.h>
using namespace std;
//求两个数中较大的数,返回较大的数
int getMaxTwoNum(int num1, int num2);
//求两个数中较小的数,返回较小的数
int getMinTwoNum(int num1, int num2);
int main()
{
cout << "Hello World!\n";
int(*pFun)(int a, int b); //函数指针
int a, b;
cout << "请输入两个整数 a, b" << endl;
cin >> a >> b;
cout << "直接调用原函数求最大值:" << getMaxTwoNum(a, b) << endl;
pFun = getMaxTwoNum; //函数指针进行赋值
cout << "使用函数指针求最大值:" << (*pFun)(a, b) << endl;
cout << "直接调用原函数求最小值:" << getMinTwoNum(a, b) << endl;
pFun = getMinTwoNum; //函数指针进行赋值
cout << "使用函数指针求最小值:" << (*pFun)(a, b) << endl;
getchar();
}
//求两个数中较大的数,返回较大的数
int getMaxTwoNum(int num1, int num2)
{
return (num1 > num2 ? num1 : num2);
}
//求两个数中较小的数,返回较小的数
int getMinTwoNum(int num1, int num2)
{
return (num1 < num2 ? num1 : num2);
}