指针2 数组

1.指针变量(int *)和数组名是同一个东西;

2.指针前加上*(指向的变量)和数组元素是同一个东西;

3.指针作形参,函数体里面可以改变的是指针指向的变量的值,不是指针的值(可以改变的是数组元素的值);原因:单向传递

4.数组名作函数形参,相当于指针作形参

5.对a[i]的求解过程:先a+i,然后*(a+i),即先元素地址,然后才是元素本身。

6.int  a[10]

int *p;

p=a;                   //p=&a[0],指针p指向数组a

*(p+i) 相当于a[i]    //指针法引用数组元素,提高程序运行效率

在这里a和p可以作加法,p+1相当于p+sizeof(int)

7.p可以指向数组a以后的内存单元,系统不会报错

8.指针作函数参数的情况:需要多个返回值,return无法实现;这时函数为void型

9.可以用指针作形参,接收数组地址(实参),因为编译时系统统一当成指针处理

10.实参数组名a代表固定地址(或者说是指针型常量),不可能被改变,而形参数组名是指针变量,它的值可以改变,函数调用开始时,它接受实参传来的地址,但在函数执行期间,它可以再被赋值。






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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值