C语言之指针函数和函数指针

C和C++2023年8月25日 am8:08发布11个月前更新 3XCN.COM站长
0 0 0
广告也精彩
目录

前言

C语言中,除了数组指针指针数组,还有指针函数函数指针

很绕,容易记错!因此记录一下,方便自己查阅!

正文

指针函数

指针函数是一个函数的返回值为地址的函数。

返回值为指针类型的一个函数

一般格式:

数据类型 * 函数名(形参){
    语句:
}

比如

char name[] = "@站长";

char* getName() {
    return name;
}

本质就是函数!

函数指针

函数指针用来存放函数的地址,这个地址就是函数入口的地址。函数名就是代表函数的入口地址!

一般定义形式:

数据类型 (* 函数指针名称) (参数说明表);

规则

  1. 数据类型 : 是函指针所指向的函数返回值类型

  2. 参数说明表 : 与函数指针缩指向的形参说明表保持一致

# 定义
int (*fun_sum)(int x, int y);

int sum(int x, int y){
    return x+y;
}

# 指向sum地址
# 可看成给sum函数找新代理名为fun_sum
fun_sum = sum;

小结

1. [指针函数]]是个函数,返回类型为指针
2. [函数指针]是个指针,用于指向函数地址的
3. 如果函数名前的指针*被括号()包含,就是函数指针;反之,是指针函数

PS:我的理解,完全可以看后面名称。

如果后面的是指针,那就是指针类型,也就可以指向地址。

如果后面的是函数(或数组),那就是返回类型或存储类型是指针。

参考文章

 历史上的今天

版权声明 1、 本站名称: 91易搜
2、 本站网址: 91es.com3xcn.com
3、 本站文章: 部分来源于网络,仅供站长学习和参考,若侵权请留言
广告也精彩

相关文章

广告也精彩

暂无评论

评论审核已启用。您的评论可能需要一段时间后才能被显示。

暂无评论...

网站升级中

公告

近期网站升级中,可能存在一些bug。欢迎反馈 https://www.91es.com/we.html

本站域名

本站域名 : 91es.com3xcn.com。本站邮箱 : 站长邮箱 i@oorr.cn,通知邮箱we@oorr.cn ,如有更新,请看公告 。