c语言中“函数指针”

devtools/2024/9/24 19:56:01/

变量有地址,数组有地址,那么函数是否有地址呢?

int Add(int x,int y){

return x+y;

}

int main()

{
     pritnf("%p\n",&Add);

     pritnf("%p\n",Add);    //&函数名和函数名都是函数的地址,没有区别。

     return 0;

}

若是想存放起来:int (*pf)(int,int) = &Add;     //pf:函数指针变量

去掉名字:则就是函数指针pf类型:int  (*)(int,int)  函数指针类型。

若是:

  int (*pf)(int,int)=Add;   

  int ret=(*pf)(4,5); //  *可写可不写,对其没有影响。写的话必须带上小括号

  pritnf("%d\n",ret);

例题:

int mian()

{
    (*(void)(*) ( ) ) 0 ( );

return 0;

}

其中的 (*(void)(*) ( ) ) 0 ( );是什么意思?

     由此可见函数指针类型是:void (*)( ),这是强制类型转换。例如int (3.14)

     也是一次函数调用,调用0的地址存放的那个函数。

     0地址出放的这个函数是没有参数的,返回类型是void.

例题:

void (*signal (int,void(*) (int) ) ) (int);

       signal:函数名,跟圆括号结合了。

      (int,void(*) (int) )函数参数,整形,一种函数指针类型,可接收一函数地址。

      剩下的就是返回类型,void(*)(int)--函数指针类型

     该函数指向函数参数int,返回类型void.

函数定义:

int Add(int x,int y)

{

return x+y;

}

函数调用:Add(3,5);

函数声明:int Add(int,int);


http://www.ppmy.cn/devtools/116641.html

相关文章

解决 Ubuntu 18.04 下与 TIFFField 和 Anaconda 冲突导致的库加载问题

在 Ubuntu 18.04 系统上,我在安装完ROS后,启动具有 GUI 的软件(如 RViz 和 Gazebo)时遇到了一个问题:每次尝试启动这些软件时,终端中都会报错,错误信息类似如下: rviz: relocation …

【资源三号卫星】

资源三号卫星 资源三号卫星(ZY-3),作为中国第一颗民用高分辨率光学传输型测绘卫星,于2012年1月9日成功发射,正式拉开了我国在高分辨率对地观测领域自主发展的序幕。以下是对资源三号卫星的详细介绍: 基本…

《线性代数》学渣笔记

文章目录 1 行列式1.1 克拉默法则1.2 基本性质1.3 余子式 M i j M_{ij} Mij​1.4 代数余子式 A i j ( − 1 ) i j ⋅ M i j A_{ij} (-1)^{ij} \cdot M_{ij} Aij​(−1)ij⋅Mij​1.5 具体型行列式计算(化为基本型)1.5.1 主对角线行列式:主…

订单超时取消的11种方式

在电商、支付等系统中,一般都是先创建订单(支付单),再给用户一定的时间进行支付,如果没有按时支付的话,就需要把之前的订单(支付单)取消掉。 这种类似的场景有很多,还有…

深入解析Linux驱动开发中的I2C时序及I2C高频面试题

目录 1 I2C通信协议及关键时序事件 1.1 I2C总线结构 1.2 关键时序事件 1.3 仲裁机制与总线冲突解决 2 Linux内核中的I2C时序处理 2.1 I2C适配器 2.2 I2C算法 2.3 I2C核心组件 3 I2C时序问题的调试与解决方法 3.1 超时机制与唯一地址 4 I2C总线挂死问题分析及解决方法…

一文搞懂C++继承

一文搞懂C继承 1.继承的概念及定义1.1继承的概念1.2 继承定义1.2.1定义格式1.2.2继承关系和访问限定符1.2.3继承基类成员访问方式的变化 2.基类和派生类对象赋值转换3.继承中的作用域4.派生类的默认成员函数4.1 构造函数4.2 拷贝构造4.3 赋值重载4.4 析构函数 5.继承与友元6. 继…

Android14 手机蓝牙配对后阻塞问题解决

Android14 手机蓝牙配对后阻塞问题解决 文章目录 Android14 手机蓝牙配对后阻塞问题解决一、前言二、手机蓝牙配对后阻塞问题解决1、部分日志:2、解决方法 三、其他1、Android14 蓝牙 BluetoothService 启动和相关代码介绍2、Android14 待机关机蓝牙自动关闭分析解决…

宠物去浮毛救星?希喂、小米、霍尼韦尔宠物空气净化器哪款好用

怎么有人放假也不开心? 快到的国庆假期真是愁死我了...本来我妈国庆去旅游,我就打算不回家,和我家猫过二人世界。结果突然有事,我妈取消出行,改成让我假期回家陪她。我回家容易,我家猫回去可难啊&#xff…