c语言之指向函数的指针
时间:2022-07-24
本文章向大家介绍c语言之指向函数的指针,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
一个函数在编译时被分配给一个入口地址。这个函数的入口地址就被称为函数指针。
#include<stdio.h>
#include<iostream>
int max(int, int);
int main() {
int (*p)(int,int);
int a, b, c;
p = max;
printf("请输入a,b的值,以空格隔开:n");
scanf_s("%d %d", &a, &b);
c = (*p)(a, b);
printf("a=%d,b=%d,max=%dn", a, b, c);
system("pause");
return 0;
}
int max(int a, int b) {
if (a >= b) {
return a;
}
else
{
return b;
}
}
用指向函数的指针作函数参数:
#include<stdio.h>
#include<iostream>
int max(int, int);
int min(int, int);
int add(int, int);
int process(int a, int b, int(*func)(int a, int b));
int main() {
int a, b;
printf("请输入a,b的值,以空格隔开:n");
scanf_s("%d %d", &a, &b);
printf("a=%d,b=%d,max=%dn", a, b, process(a,b,max));
printf("a=%d,b=%d,min=%dn", a, b, process(a, b, min));
printf("a=%d,b=%d,add=%dn", a, b, process(a, b, add));
system("pause");
return 0;
}
int max(int a, int b) {
if (a >= b) {
return a;
}
else
{
return b;
}
}
int min(int a, int b) {
if (a >= b) {
return b;
}
else
{
return a;
}
}
int add(int a, int b) {
return a + b;
}
int process(int a, int b, int(*func)(int a,int b)) {
return (*func)(a, b);
}
输出:
- Python机器学习库:Scikit-Learn简介
- 很简单的企业管理器---我写程序的方式,几个自定义控件。
- 使命必达: 深入剖析WCF的可靠会话[原理揭秘篇](上)
- 其实添加数据也可以这样简单——表单的第三步抽象(针对UI及后置代码)
- 为Symfony2和Redis正名,基于PHP的10亿请求/周网站打造
- 如何使用Python基线预测进行时间序列预测
- 如何使用统计显着性检验来解释机器学习结果
- 其实添加数据也可以这样简单——表单的第一步抽象(针对数据访问层)《怪怪设计论: 抽象无处不在 》有感
- WCF服务端运行时架构体系详解[上篇]
- 使命必达: 深入剖析WCF的可靠会话[编程篇](下)
- 在网页里让文本框只能输入数字的一种方法。外加回车换Tab
- 如何用Python从零开始实现简单的线性回归
- 使命必达: 深入剖析WCF的可靠会话[编程篇](上)
- 页面回发后,让页面自动滚动到指定位置的一种简单的方法
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- poiAndEasyExcel学习(三)
- poiAndEasyExcel学习(四)
- 使用OpenCV为视频中美女加上眼线
- 论文精读|5th|YOLO v3的新特性|目标检测|附下载
- 算法集锦(9)|自动驾驶|道路图像增强算法
- 基于OpenCV实现海岸线变化检测
- 爬取bilibili再也不用头疼了,bilibili-api一步到位!
- 「React」很多人在滥用 state
- == 与equals和hashCode与equals
- 算法集锦(10)| 自动驾驶、机器人 | 物品图像动态检测算法实现
- Hystrix仪表盘
- Centos7 Nginx的SSL证书安装
- 算法集锦(11)| 自动驾驶 | 基于HOG和SVM的车辆识别算法
- 剑指offer(一):找出数组中重复的数字
- 剑指offer(二):不修改数组找出重复的数字