参考书目:C/C++规范设计简明教程,P281
//10_6_2 函数指针作为参数
//编写了加减乘等3个函数,使用函数指针进行调用
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <stdio.h>
#include <math.h>
#include <string.h>
using namespace std;
int add(int a, int b) //加
{
return a + b;
}
int sub(int a, int b) //减
{
return a - b;
}
int mul(int a, int b) //乘
{
return a * b;
}
int Process(int a, int b, int(*pFun)(int a, int b)) //函数
{
int result;
result = pFun(a, b);
return result;
}
int main()
{
cout << "Hello World!\n";
int a, b, result;
char op; //用于保存加减乘运算符
cout << "请输入两个整数和一个符号:" << endl;
cin >> a >> op >> b;
switch(op)
{
case '+':
result = Process(a, b, add);
cout << a << op << b << "=" << result<<endl;
break;
case '-':
result = Process(a, b, sub);
cout << a << op << b << "=" << result << endl;
break;
case '*':
result = Process(a, b, mul);
cout << a << op << b << "=" << result << endl;
break;
default:
result = 0;
break;
}
getchar();
}