C语言第九节 函数指针

1、概念

函数声明: int maxValue (int a, int b); 

函数类型: int (int a, int b); 

函数指针类型: int (*) (int a, int b);

函数指针定义: int (*p) (int a, int b) = NULL

// p是函数指针变量,其它是类型.

 

2、函数回调

本质:函数指针作为函数参数,函数调用时传入函数地址;

  特点:

     1.函数回调可以让程序变得更灵活.

     2.⾼高内聚,低耦合.

 

3、动态排序

使用情景:排序需求不定的时候;

具体使用步骤(以结构体为例):

  1.定义一个比较结果的枚举,罗列比较的所有可能性.

  2.将条件写成对应的比较函数,传入两个结构体变量.

  3.封装排序函数,接收条件比较函数的地址.

 

原文地址:https://www.cnblogs.com/hyl2012/p/5212799.html