typedef int (*fptrOperation)(int,int);
int add(int num1, int num2)
{
return num1 + num2;
}
int subtract(int num1, int num2)
{
return num1 - num2;
}
int compute(fptrOperation operation, int num1, int num2)
{
return operation(num1, num2);
}
fptrOperation select(char opcode)
{
switch(opcode)
{
case '+': return add;//add is a name of function
case '-': return subtract;//subtract is a name of function
}
}
int evaluate(char opcode, int num1, int num2)
{
fptrOperation operation = select(opcode);
return operation(num1, num2);
}
//application
int main()
{
printf("%d\n",evaluate('+', 5, 6));
}
利用函数指针设计一个简单的计算器(加减乘除)
最新推荐文章于 2024-02-23 23:38:09 发布