C语言 函数指针

本文详细探讨了C语言中的函数指针,包括如何定义和使用函数指针,typedef在简化函数指针定义中的作用,以及如何理解返回函数指针的函数声明。通过实例解析了如`void (*signal( int sig, void (* handler)( int )))( int );`这样的复杂函数指针用法,并提供了类型强制转换和验证代码示例。" 128747877,1259621,pytdx安装与初步使用指南,"['python', 'pandas', '数据分析']
摘要由CSDN通过智能技术生成

浏览博客时看到这样一个函数,linux下的signal 函数:void ( *signal( int sig, void (* handler)( int )))( int );

虽说学过C语言但是看不懂啊!没学明白。研究了一下,记录下来吧。

一、定义函数指针

return_type (*func_pointer)(parameter_list)

普通指针变量的定义

int * p;

char * pointer;

类型的限定都在变量前面;

函数指针类型的限定是前后都有,前面是返回类型,后面是输入参数。


利用typedef 可以简化上面的表达方式。

typedef return_type (*FunctionPointer) (parameter_list);

FunctionPointer func_pointer;

这样是不是容易读了,和上面的功能一样,定义了一个返回类型为return_type ,输入参数为parameter_list的函数指针。

二、定义返回函数指针的函数

return_type(*function(func_parameter_list))(parameter_list)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值