二维数组的内存布局详解
创作时间:
作者:
@小白创作中心
二维数组的内存布局详解
引用
CSDN
1.
https://blog.csdn.net/weixin_44319931/article/details/104703869
内存都是线性的,那么二维数组的存储是怎样的?
a[2][2]的内存布局如下图所示:
知道了内存分布,那么有一道例题:
int a[5][5];
int (*p)[4];
p = (int (*)[4])a; //这里要强制转换,不然编译器会报错
printf("%d\n",&p[4][2] - &a[4][2]);
很明显a[5][5]的内存分布如下:
那p的内存分布呢?首先p是一个指针,是指向一个包含4个元素的数组的指针,并且当a作为右值赋给p时,a是作为数组首元素的首地址,也就是说,p的首地址就是a的首元素的首地址,即内存是重合部分的。如下图所示:
所以&p[4][2] - a[4][2]的答案就出来了。
热门推荐
公办大专学费一年多少钱 收费标准是什么 公办大专的学费标准一览
二十四节气字体设计之美
塑料袋在配音中的创意运用
故障识别:基于格拉姆角场(GASF)与卷积神经网络(CNN)的故障识别/分类模型
什么叫舒张压?
法家的核心思想是什么?又被分为了哪三大派别?
汉字有乾坤:输入法都打不出来的,世界上笔画最多的汉字!
复合固态电解质膜及其制备方法:提升固态电池性能的关键技术
《细胞》:把肿瘤变成“猪肉”?!中国科学家首创溶瘤疗法
古人“不破楼兰终不还”,楼兰到底干了何事?让中原人如此憎恨?
茉莉与咖啡,迷人的咖啡花香
如何准备一份完整的外观专利申请材料?
贴膏药痒是排湿气吗
同位素:元素家族中的“孪生兄弟”
深圳中学国际班怎么进?深中国际部录取要求及学费介绍!
B证扣后如何处理?这种情况下需要注意哪些法律和安全问题?
提离职要讲真实原因吗?离职日如何决定?和公司"谈分手"请避免4大NG行为
普通文档管理方法包括哪些内容
喝了啤酒还能喝中药吗
新生儿接种卡介苗注意事项应谨记,前后饮食调理很关键
吃什麼改善過敏體質?最有效天然抗過敏劑是「這食材」!5大類實證食物打敗季節性過敏
如何顺利申请入户广州?申请过程中需要满足哪些条件?
如何用代码写一首诗
混动车怎么保养?
线性代数在算法中的应用:快速计算斐波那契数列第n项
科学普及 | 多吃油、吃好油,双低菜籽油——最健康的大宗食用油
深度学习实用方法论:从目标设定到模型优化
颅骨闭合不全
2025年深圳国际学校综合排名!你家孩子的学校在哪一层?
股市中“额”的含义是什么?其变化对市场有何影响?