指针高级用法

 数组指针(指向数组整体)

数组a【10】,a是数组首元素地址,&a是代表整个数组地址,但他们的值一样

定义指针时与int *p不同,指针指向整个数组。

指针+1则是数组

引申到二维数组:

与一维数组不同,+1表示下一个(一维数组)

a+i为一维数组(整个数组)地址,*(a+i)为一维数组数组名(地址)这点最不好理解

返回值为指针的函数不能返回局部变量的地址

可以用static解决

创建堆区空间

栈区内存小,无法保存超长字节数据,可以将数据存在堆区调用。

引用函数mallco与realloc,申请与扩充空间。

使用实例

上述第二段可以直接调用realloc函数,就不需要进行重开长空间及复制等操作,并且会自动释放p

指针所申请堆空间。

realloc(q ,n * sizeof(int))

函数指针

函数入口地址(函数名),函数第一条指令地址

定义:

初始化及赋值(其中参数a、b可以去掉留下类型名)

可以用指针调用函数

降低程序耦合性,解耦合。

引申作用:

回调函数:div3与div5,可以在sort函数中调用,以应对不同需求时按需调用回调函数。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值