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)

相关推荐
2301_821369613 分钟前
嵌入式实时C++编程
开发语言·c++·算法
sjjhd6525 分钟前
多核并行计算优化
开发语言·c++·算法
一起养小猫14 分钟前
Flutter for OpenHarmony 实战 表单处理与验证完整指南
android·开发语言·前端·javascript·flutter·harmonyos
leiming616 分钟前
FreeRTOS 的任务与 Linux
java·开发语言
恶魔泡泡糖19 分钟前
51单片机串口通信
c语言·单片机·嵌入式硬件·51单片机
田野追逐星光37 分钟前
STL的容器vector的模拟实现
开发语言·c++
知无不研1 小时前
c语言动态内存规划
c语言·动态内存管理·内存泄露·基础知识·malloc·realloc·calloc
爱编码的傅同学1 小时前
【常见锁的概念】死锁的产生与避免
java·开发语言
Tansmjs1 小时前
实时数据可视化库
开发语言·c++·算法
WBluuue1 小时前
Codeforces 1075 Div2(ABC1C2D1D2)
c++·算法