函数指针,数组指针,指针数组,函数指针数组

总结:先和谁结合就是谁,先和数组结合就是数组,先和指针结合就是指针!!

(1).函数指针:

首先是指针则有: *p

又是函数则有:(*p)()

若定义一个函数指针   

int (*p)(int,int)=&arr;

int arr(int x,int y)

{

;

}

(2).数组指针

同样道理先是指针 *p

后是数组则有   (*p)[ ]

定义一个数组指针:

int arr[8]={0,1,2,3,4,5,6,7};

int (*p)[8]=&arr;//表示一个指针p所指向数组arr[8]数组地址,数组中每个值为int类型;

(3).指针数组

首先是数组p[]

然后是指针则有   *(p[])

定义一个指针数组:

int a=10;

int b=8;

int c=12;

int*(p[3])={&a,&b,&c};//表示一个数组p[3],里面有三个元素,每个元素均为int *型

for(int i=1;i<=3;i++)

{

printf("%d",*(arr[i]));

}

(4)函数指针数组:

首先是数组p[]

然后是指针   (*p[])

再是函数   (*p[])()//切记不可写成 *(p[])()  

则可定义一个函数指针数组:

int ADD(int x,int y)

{

return x+y;

}

int SUB(int x,int y)

{

return x-y;

}

int (*p[2])(int,int)={ADD,SUB};//表示一个指针数组指,数组里面存放的是int类型函数;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值