基本介绍

回调函数:形参中包含另一个函数的函数指针
用函数指针接收另一个函数

案例

代码解析

具体代码

#include<stdio.h>
#include<stdlib.h>
//回调函数--//函数原型
int getRand();
int *produce(int*arr,int len,int(*get)());
int main()
{int arr[10];int len=sizeof(arr)/sizeof(int);int i;//result=arr=&arr[0]int*result=produce(arr,len,getRand);//getRand传入函数名,函数名是函数的首地址//打印数组for(i=0;i<len;i++){//result是数组的首地址//+i移动指针printf("arr[%d]=%d address=%p self-address=%p\n",i,*result+i,result+i,&result);}getchar();return 0;
}
//获取0-9的随机数
int getRand()
{return rand()%10;//0--99
}
//将随机数赋值给数组
int *produce(int*arr,int len,int(*get)())
{int i;for(i=0;i<len;i++){//arr[i]=(*get)();arr[i]=get();}return arr;
}

练习–统计字符串英文个数

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
//回调函数--统计字符串中的英文个数//函数原型
int add(int n);
int count(char* s,int len,int(*padd)(int));int main()
{//不能使用char *s=""; 这里是字符串常量,不能改变char s[100];printf("please input s:\n");gets(s);//获取输入的字符串int len=strlen(s);int sum=count(s,len,add);//add传递函数名(地址)printf("the sum is %d\n",sum);getchar();//entergetchar();return 0;
}
//数量自增
int add(int n)
{return ++n;
}
//统计字符串中英文个数
int count(char* s,int len,int(*padd)(int))
{int i;int count=0;for(i=0;i<len;i++){if((s[i]>='a'&&s[i]<='z')||(s[i]>='A'&&s[i]<='Z')){count=padd(count);}}return count;
}

C语言 回调函数 produce(arr,len,getRand)相关推荐

  1. C语言 回调函数 callback - C语言零基础入门教程

    目录 一.回调函数原理 二.回调函数简介 1.函数指针 2.指针函数 3.回调函数解释 三.回调函数实战 四.回调函数使用总结 五.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 ...

  2. c语言 is函数,关于C语言回调函数的详解~

    原标题:关于C语言回调函数的详解~ 01 什么是回调函数? 回调函数,光听名字就比普通函数要高大上一些,那到底什么是回调函数呢?恕我读得书少,没有在那本书上看到关于回调函数的定义.我在百度上搜了一下, ...

  3. C语言回调函数demo(帮助理解)以海康isapiExternDemo回调函数为例

    参考文章:c语言指针回调函数最全demo实例(简单明了一看就会) 回更 20220303 \demo\base\isapiExternDemo\isapiExternDemo.c 这边海康定义了一个回 ...

  4. c语言回调函数_C语言学习第26篇---函数与指针分析 回调函数

    函数类型的概念 1.C语言函数也是有类型的 2.函数类型由函数返回值,参数类型,参数个数共同决定 int add(int i,int j) 的类型是 int(int , int) 3.C语言中通过ty ...

  5. 一文搞懂C语言回调函数

    转载自:https://segmentfault.com/a/1190000008293902?utm_source=tag-newest 博主:Rdou Typing 来源:segmentfault ...

  6. C语言回调函数callback

    一.定义和使用场合 回调函数是指 使用者自己定义一个函数,实现这个函数的程序内容,然后把这个函数(入口地址)作为参数传入别人(或系统)的函数中,由别人(或系统)的函数在运行时来调用的函数.函数是你实现 ...

  7. C语言回调函数的定义和写法

    C语言中的回调函数(Callback Function) 1 定义和使用场合 回调函数是指 使用者自己定义一个函数,实现这个函数的程序内容,然后把这个函数(入口地址)作为参数传入别人(或系统)的函数中 ...

  8. c语言timer linux 回调函数_C语言回调函数详解

    1. 什么是回调函数? 回调函数,光听名字就比普通函数要高大上一些,那到底什么是回调函数呢?恕我读得书少,没有在那本书上看到关于回调函数的定义.我在百度上搜了一下,发现众说纷纭,有很大一部分都是使用类 ...

  9. C 语言回调函数详解

    1. 什么是回调函数? 回调函数,光听名字就比普通函数要高大上一些,那到底什么是回调函数呢?网络上众说纷纭,有很大一部分都是使用类似这么一个场景来说明:A君去B君店里买东西,恰好缺货,A君留下号码给B ...

最新文章

  1. 相机自动对焦AF原理
  2. netframework转core时文件响应流问题
  3. SpringCloud 应用在 Kubernetes 上的最佳实践 — 部署篇(开发部署)
  4. Android存储路径你了解多少?
  5. 有关JNLP中传SESSIONID为参数的问题
  6. cmake could not find openssl_Mac OSX系统CMake、QT5运行OpenCV 4.0
  7. 【工作感悟】成功入职阿里月薪45K
  8. python列表的特点_python基础(一)列表、集合和元组的基本特性
  9. Python之程序执行时间计算
  10. 5 月数据库排行:PgSQL 慢增长,MySQL冲击第一!
  11. zookeeper 进入客户端_探究—Zookeeper的启动过程
  12. 环境数据-全球中国土壤数据资源下载和提取教程
  13. 图书管理系统(Java实现,十个数据表,含源码、ER图,超详细报告解释,2020.7.11更新)...
  14. Java复习---基础复习
  15. 查询论文SCI/EI检索及引用报告
  16. 考研数学(二)知识点回顾及笔记(第五章 定积分及应用)
  17. 3dmax骨骼的绑定
  18. 如何实现从OPC到阿里云IoT平台的数据交换?
  19. Asset Catalog Compiler Warning Group
  20. Java8 IF ELSE IF 优化

热门文章

  1. 【转】c# 协变与抗变
  2. SharePoint2010开发最佳实践
  3. 【精华】详解Qt中的内存管理机制
  4. Hive优化(再一遍系统复习)
  5. 【PAT - 甲级1006】Sign In and Sign Out (25分)(STLmap)
  6. 【2019牛客暑期多校训练营(第二场)- F】Partition problem(dfs,均摊时间优化)
  7. 【2018ACM山东省赛 - E】Sequence(树状数组,思维,优化)
  8. 【计蒜客 - 2019南昌邀请赛网络赛 - I】Max answer(单调栈,RMQ)
  9. dataframe去重复 python_python – 在DataFrame中组合重复的列
  10. android 判断空,Android空判断的坑