指针加一
来源:互联网 发布:济宁软件开发公司 编辑:程序博客网 时间:2024/04/28 21:35
例:
int a[5]={1,2,3,4,5};
int *ptr=(int *)(&a+1);
&a+1不是首地址加一,系统会认为加一个a数组的偏移,是偏移了一个数组的大小
ptr是&(a[5]),也就是a+5;
指针加一要根据指针类型加上一定的值,不同类型的指针加一之后增加的大小不同。a是长度为5的int 数组指针,所以要加5*sizeof(int*);
因为ptr与(&a+1)类型不一样,a是数组首地址,&a是对象(数组)首地址。ptr-1只会减sizeof(int*)
0 0
- 指针的加一
- 指针加一
- 指针数组加一的问题
- 图解数组指针与多维数组(附:为什么指针加一,地址不一定加一)
- 加一
- 加一
- 加一
- 加一
- 加一
- 加一
- 加一
- 加一
- 加一
- 指针加1
- 指针-数组-加常数
- 指针自加问题
- 指针加1
- 拷贝加指针拷贝
- 杭电ACM2191(多重背包)
- 多CPU支持下的 percpu 变量分析
- 回溯算法
- 杭电-1285确定比赛名次(topo)
- 抽象工厂模式实例与讲解
- 指针加一
- 排序算法
- android向内存卡写入xml文件
- 缺?
- NYOJ 311 完全背包
- 菜鸟级Spring AOP开发简介
- ACM题目分类总结及pku题目分类
- 企业大数据之道
- Day 8(11.15):存储过程(1)--创建、修改和删除存储过程