2020-03-18

数组与指针

1 使用数组时一般会转换为指针
ia是一个int*类型的指针常量
ia和&ia[0]都表示数组第一个元素的地址
可以使用指针对数组进行访问
int a[10];
//指针访问数组元素
for(int *p = a; p < a+10; p++)
cout << p;
2 一维数组元素在内存中按下标顺序依次存放
一维数组a[n]的元素a[i]在内存中地址是a+i。
多维数组在内存中按行序存储
二维数组a[m][n]的元素a[i][j] 在内存中的地址是a+(i
n+j)
使用指针访问数组时需要控制指针的范围,确保指针指向数组的元素
3 库函数begin()和end()
让指针在数组上的使用更简单更安全
在头文件中定义
用法
begin(数组名)
返回指向数组第一个元素的指针
end(数组名)
返回指向数组最后一个元素的下一个位置的指针
4
//在数组arr 中查找第一个负数:
int *pb = begin(arr), *pe = end(arr);
while(pb != pe && *pb >= 0)
++pb;

//逐个输出数组元素的循环
for(int p = begin(arr); p!= end(arr); ++p)
cout << *p << “\t”;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

跳槽一号

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值