C语言:通过函数指针来完成两个数的加减乘除
2015-08-02 21:17
387 查看
//
// main.c
// Function_pointer
//
// Created by mac on 15/8/2.
// Copyright (c) 2015年. All rights reserved.
// 要求:通过函数指针求两个整数的和、差、积、商。
//知识点:函数指针就是一个指向函数的指针,通过指针指向要调用的函数来完成操作。
//切记:要被调用的函数必须和函数指针的声明的一样(包括:返回值类型、参数个数和类型)
#include <stdio.h>
int add(int ,int );
int sub(int ,int );
int mult(int ,int );
int divi(int ,int );
int main(int argc, const char * argv[])
{
int (*p)(int,int);//定义函数指针
p = add;//指针指向加法函数
printf("add = %d\n",p(20,10));
p = sub;//指针指向减法函数
printf("sub = %d\n",p(20,10));
p = mult;//指针指向乘法函数
printf("mult = %d\n",p(20,10));
p = divi;//指针指向除法函数
printf("divi = %d\n",p(20,10));
return 0;
}
int add(int a,int b)
{
return a+b;
}
int sub(int a,int b)
{
return a-b;
}
int mult(int a,int b)
{
return a*b;
}
int divi(int a,int b)
{
return a/b;
}
// main.c
// Function_pointer
//
// Created by mac on 15/8/2.
// Copyright (c) 2015年. All rights reserved.
// 要求:通过函数指针求两个整数的和、差、积、商。
//知识点:函数指针就是一个指向函数的指针,通过指针指向要调用的函数来完成操作。
//切记:要被调用的函数必须和函数指针的声明的一样(包括:返回值类型、参数个数和类型)
#include <stdio.h>
int add(int ,int );
int sub(int ,int );
int mult(int ,int );
int divi(int ,int );
int main(int argc, const char * argv[])
{
int (*p)(int,int);//定义函数指针
p = add;//指针指向加法函数
printf("add = %d\n",p(20,10));
p = sub;//指针指向减法函数
printf("sub = %d\n",p(20,10));
p = mult;//指针指向乘法函数
printf("mult = %d\n",p(20,10));
p = divi;//指针指向除法函数
printf("divi = %d\n",p(20,10));
return 0;
}
int add(int a,int b)
{
return a+b;
}
int sub(int a,int b)
{
return a-b;
}
int mult(int a,int b)
{
return a*b;
}
int divi(int a,int b)
{
return a/b;
}
相关文章推荐
- c语言 实现字符串和数字的连接
- C++知识点随笔(二):继承、多态
- 瞧,这是UE4 C++
- C++开源框架
- C++默认构造函数的问题
- c++ primer Exercise 5.0
- C++ Primer Plus 学习笔记(第八章)
- C语言:通过指针函数输出二维数组中每个学生的成绩
- C++常用容器总结
- C++字符串总结
- C语言 -- 定时关机程序
- c++ 11 基于范围的for循环
- VC++游戏开发基础系列从入门到精通
- C语言-VS2010调试tips
- C语言-递归算法以及经典递归(Hanoi)
- 字符串拷贝操作
- C语言-VS2010字体改变和行数显示
- Box2D C++教程 第三节:Testbed结构
- Reverse反转算法+斐波那契数列递归+Reverse反转单链表算法--C++实现
- C语言:通过指针对字符串进行拼接