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)

相关推荐
white-persist18 小时前
Python实例方法与Python类的构造方法全解析
开发语言·前端·python·原型模式
千里马-horse18 小时前
Async++ 源码分析8--partitioner.h
开发语言·c++·async++·partitioner
Lucis__19 小时前
再探类&对象——C++入门进阶
开发语言·c++
007php00719 小时前
某大厂跳动面试:计算机网络相关问题解析与总结
java·开发语言·学习·计算机网络·mysql·面试·职场和发展
lsx20240619 小时前
HTML 字符集
开发语言
很㗊19 小时前
C与C++---类型转换
c语言·开发语言
say_fall19 小时前
精通C语言(3. 自定义类型:联合体和枚举)
c语言·开发语言
北京不会遇到西雅图20 小时前
【SLAM】【后端优化】不同优化方法对比
c++·机器人
郝学胜-神的一滴20 小时前
Effective Python 第43条:自定义容器类型为什么应该从 `collections.abc` 继承?
开发语言·python
迎風吹頭髮20 小时前
UNIX下C语言编程与实践38-UNIX 信号操作:signal 函数与信号捕获函数的编写
linux·c语言·unix