c语言定义函数指针和typedef简写

c语言定义函数指针和typedef简写

  二种方法来定义函数指针

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<Windows.h>
 4 
 5 int add(int a, int b)
 6 {
 7     return a + b;
 8 }
 9 
10 //void msg(char s[])
11 //void (*p)(char s[]) 函数指针的定义方法
12 //void (*)(char *s)   函数指针的类型
13 
14 void msg(char s[])
15 {
16     MessageBoxA(0,s,s,0);
17 }
18 
19 
20 void main()
21 {
22     //方法1
23     //定义函数指针的规则
24     //1.先把函数拿过来  int add(int a, int b) , add就是一个地址
25     //2.把函数名挖空    int (*p)(int a,int b);
26     int(*padd)(int a, int b); //函数指针
27     //3.赋值
28     padd = add;
29     printf("%d", padd(11, 19));//30
30 
31     //方法2.直接初始化
32     void(*pmsg)(char s[]) = msg; //定义函数指针并初始化
33     pmsg("心里的雨倾盆的下");
34 
35     getchar();
36 }

   通过typedef构建

 1 //使用typedef给函数指针类型一个别名
 2 //typedef没有定义新的类型,给已经有的类型起一个别名,减少输入
 3 typedef int(*PADD)(int a, int b); //*类型, PADD存储函数地址
 4 typedef void(*MEG)(char s[]);
 5 
 6 void main()
 7 {
 8     PADD padd1 = add; //创建函数指针
 9     printf("%d",padd1(11,23));
10     
11     MEG meg1 = msg;
12     meg1("心里的雨倾盆的下");
13 
14     getchar();
15 }

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108909.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 堆糖网热门图片下载[通俗易懂]

    堆糖网热门图片下载[通俗易懂]下载目标是堆糖网热门图片,打开网页并下拉发现图片是通过ajax加载的,按F12打开开发者工具选择nerwork并筛选xhr,继续下拉网页找到ajax请求的api,如下图所示然后就可以构造请求获取包含

    2022年7月2日
    29
  • 长江商学院营销学李洋教授分析大数据与精准营销

    长江商学院营销学李洋教授分析大数据与精准营销  精准营销是大数据应用领域的重要课题之一,大数据时代的精准营销可以让企业以最小的营销成本获得最大的收益。那么我们如何利用企业大数据做精准营销呢? …

    2022年7月21日
    33
  • Java面向对象三大特性详解「建议收藏」

    Java面向对象三大特性详解「建议收藏」一、封装1、概念:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。2、好处:只能通过规定的方法访问数据。 隐藏类的实例细节,方便修改和实现。3、封装的实现步骤     需要注意:对封装的属性不一定要通过get/set方法,其他方法也可以对封装的属性进行操作。当然最好使用get/set方法,比较标准。A、访问修饰…

    2022年7月25日
    8
  • 静态分析的四种基本方法是_比较静态均衡分析方法

    静态分析的四种基本方法是_比较静态均衡分析方法*数据流分析(DataFlowAnalysis)将数据看作是图,节点是程序的基本快,边是描述控制如何从一个基本快转移掉另一个基本快。图可以解决很多问题,例如:以图中边的抽象得出数学方程,七届就

    2022年8月4日
    6
  • 好用的免杀远控_延迟低的远程控制软件

    好用的免杀远控_延迟低的远程控制软件能测试的,私联系。

    2025年8月2日
    4
  • 高速数据采集存储系统分类

    随着计算机技术发展,计算机总线速率、处理能力与存储技术得到了快速发展。就存储技术而言相比于五年前,现在不论是传输速率,存储速度与存储容量均有了不同数量级的变化。如现在的PCIeExpress总线可以实现3GB/s(Gen2.0,X8)以上,或6GB/s(Gen3.0,X8)以上的传输速率;而SATA磁盘容量也可以轻易实现动辄几T,多动几十T的规模

    2022年4月9日
    55

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号