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)

相关推荐
葡萄城技术团队14 小时前
在 Java 中优化 MySQL 查询以提升性能
java·开发语言·mysql
Rhys..14 小时前
js-箭头函数
开发语言·javascript·ecmascript
爱学习的梵高先生14 小时前
C++:友元
开发语言·c++
资深低代码开发平台专家15 小时前
厌倦JavaScript 框架桎梏?Still.js:用原生之力,解遗留系统之困
开发语言·javascript·ecmascript
纟 冬15 小时前
Flutter & OpenHarmony 运动App运动目标设定组件开发
开发语言·javascript·flutter
2501_9444460015 小时前
Flutter&OpenHarmony应用内导航与路由管理
开发语言·javascript·flutter
moxiaoran575315 小时前
Java开发中VO的使用
java·开发语言
星火开发设计15 小时前
深度优先搜索(DFS)详解及C++实现
c++·学习·算法·计算机·深度优先·大学生·期末考试
郝学胜-神的一滴15 小时前
Linux线程错误调试指南:从原理到实践
linux·服务器·开发语言·c++·程序人生
独自破碎E15 小时前
消息队列如何保证消息的有效性?
java·开发语言·rocketmq·java-rocketmq