当前位置:网站首页 > 技术博客 > 正文

指针函数c语言例子



C语言中常常出现函数指针和指针函数两个名词,本文分析一下两者的区别

函数指针: 本质上是一个指针,但指向的是一个函数首地址(指针不能偏移),可以用函数指针来传递函数,常用于回调函数中

指针函数: 本质上是一个函数,函数的返回值是一个指针,常用于返回数组、字符串等数据结构指针

2.1 普通函数创建形式:

形式为:变量类型+ 函数名(参数)

例子如下:

 
  

2.2 指针函数创建形式:

形式为:指针类型 + 函数名(参数)

例子如下:

 
  

记忆方法:因为本质上是一个函数,其写法本质上就是用指针类型来替代普通函数定义中的类型就行

2.3 函数指针创建形式:

形式为:指针类型 + 函数名(参数)

例子如下:

 
  

记忆方法:函数指针本质上是一个指针,相对于常用的普通函数定义,其实就是把它函数名部分用指针来代替

3.1 指针函数返回字符串

以典型的字符串复制函数 为例子,传入两个字符串a、b指针做参数,拷贝b的内容到a之后返回a的指针

 
  

assert(条件语句):断言函数,相当于一个if判断句,判断内容为真时程序正常运行,为假则报错,终止程序执行

3.2 函数指针做回调函数

回调函数就是一个通过函数指针调用的函数,我们把函数的指针(地址)作为参数传递给另一个函数,然后在该函数中使用地址来回调被传递过来的函数,这就是我们说的回调函数

下面为一个演示函数,主函数中将函数指针传入中间函数,然后中间函数调用指向的函数

 
  

运行结果

20210805001256

  • 上一篇: select语句例子
  • 下一篇: java hashmap key重复
  • 版权声明


    相关文章:

  • select语句例子2025-08-04 09:29:59
  • 获取小程序二维码2025-08-04 09:29:59
  • monkey测试属于什么测试2025-08-04 09:29:59
  • form html 表单2025-08-04 09:29:59
  • python3自动化运维2025-08-04 09:29:59
  • java hashmap key重复2025-08-04 09:29:59
  • opencv copymakeborder2025-08-04 09:29:59
  • seo经典案例2025-08-04 09:29:59
  • 异或运算是指2025-08-04 09:29:59
  • tftp软件有哪些2025-08-04 09:29:59