数组、指针、函数

指针数组

指针数组是数组,是一个存放指针的数组
定义一个指针数组:int *arr1[10];
[]的优先级高于 *
数组名代表整个数组有两种情况:
1. sizeof + 数组名
2. 取地址数组名
其他情况下数组名都表示整个数组
例如:arr+1 表示下一个元素的地址,这里的arr表示的是首元素的地址
&arr+1 表示下一个数组,这里的arr表示整个数组

数组指针

数组指针是指向数组的指针
整形指针:int *print;能够指向整形数据的指针
浮点型指针:float *pf;能够指向浮点型数据的指针
定义一个数组指针:int (*p)[10]
指针+1意思是加上所指内容类型的大小,*p+1即40

函数指针

函数指针保存函数地址的变量,是指针。
函数也有地址,是第一条指令的地址。
函数名=取地址函数名。函数名具有只读属性,只能做右值。
例如:void (*pfun1)(); 指一个返回值为空,参数列表为空的函数指针
void pfun2(); 指一个返回值为void 参数列表为空的函数

函数指针数组

数组是一个存放相同类型数据的存储空间。把函数的地址存到一个数组中,这个数组就叫函数指针数组。
定义一个函数指针数组:int (*parr1[10])();
()的优先级也高于 *

指向函数指针数组的指针

指向函数指针数组的指针是指针,指针指向一个数组,数组的元素都是函数指针。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值