C/C++中指针的加一能力

一.再日常使用C语言的时候,我们会用到数组,指针。这里就会牵扯到指针以及指针的解引用和加一能力的问题。

1.普通指针的加一能力

cpp 复制代码
    int a=0;
    int *p=&a;
    cout<<*(p+1);

在指针p加一后,因为变量a是int型,所以在加一之后就到a变量紧挨着内存的后四个字节的位置,因为此处我们没有对其进行初始化,所以每次都会是随机数,大家可以试试。

2.在一维数组内的加一能力

和第一种情况一样,如果存在越界的话,也会是随机数。

3.二维数组指针的加一能力

cpp 复制代码
    int a[2][5]={1,2,3,4,5,6,7,8,9,10};
    cout<<**(a+1)<<endl;

此时我们对a加一的话,a指针此时是指向一维数组的指针,所以每次加一都是加一整个一维数组,此时就到了6的位置。

对于二维数组不熟悉的宝宝可以去这里┗|`O′|┛ 嗷~~,这个博主讲的很不错C语言二维数组指针(指向二维数组的指针)详解 (biancheng.net)

相关推荐
BIM云平台开发2 分钟前
关于return,yield 和 yield return
java·开发语言·数据结构·c#
小柯J桑_2 分钟前
C++:用红黑树封装map与set-2
开发语言·c++·set·map·红黑树
zwm_yy14 分钟前
Dockerfile && docker-compose
开发语言·docker
敲代码不忘补水34 分钟前
Python Matplotlib 经典 3D 绘图类型:从二维到三维的可视化解析
开发语言·python·3d·数据分析·numpy·pandas·matplotlib
好好学习++40 分钟前
【HF设计模式】01-策略模式
java·c++·设计模式·策略模式
码农飞飞44 分钟前
详解Rust字符串用法
开发语言·算法·rust·string·所有权·字符串用法
流着口水看上帝1 小时前
SAP开发语言ABAP开发入门
开发语言
weixin_431470861 小时前
文本数据分析(nlp)
开发语言·python·深度学习·自然语言处理
听风起1 小时前
面向对象高级-抽象类、接口
java·开发语言