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)

相关推荐
码匠许师傅7 分钟前
【C++三方组件】Qt 概览:桌面 C++ 的事实标准与许可证三轨
开发语言·c++·qt
码匠许师傅1 小时前
【C++三方组件】POCO:跨平台系统编程全家桶
开发语言·c++
bkspiderx2 小时前
基于Socket的广播通信及C语言实现详解
c语言·开发语言·socket·广播·socket的广播通信
小王C语言2 小时前
Qt常用控件:输入类控件,单行/多行输入框、下拉框、(日期)微调框、旋钮、滑动条
开发语言·qt
ESDWAN2 小时前
SD-WAN 主备切换为什么仍然会断网?从检测机制到会话恢复分析
开发语言·php
1001101_QIA2 小时前
.exe does not seem to be a Qt executable.
开发语言·qt
echome8882 小时前
Python 异常处理:try、else、finally 的正确搭配
开发语言·前端·python·异常处理·编程技巧
云和数据.ChenGuang2 小时前
Python 单继承与多继承深度剖析:从 MRO 到实战取舍
开发语言·人工智能·python·langchain
小咕聊编程3 小时前
基于Python的豆瓣电影数据可视化系统构建分析
开发语言·python·信息可视化
WBluuue4 小时前
数据结构与算法:分块(一):块状数组、块状链表
数据结构·c++·算法·链表