柔性数组如何与局部性原理相结合应用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1663个文字,预计阅读时间需要7分钟。
特征数组的概念 + 特征数组的特性 + 局部性原理 + 特征数组对特征数组的理解,让你从零开始了解特征数组,它是指数组,其元素具有动态变化特性。
柔性数组概念
- 柔性数组特点
- 局部性原理
柔性数组概念 对于柔性数组,也许你之前从未听说过,柔性数组,顾名思义,就是数组,它的柔性柔在元素个数可以动态变化, 即柔性数组是未知大小的,数组大小可以动态变化的。 在结构体中,最后一个元素允许是未知大小的数组,这个数组就叫柔性数组成员。下面直接举例子来说明柔性数组。struct S { int n; int arr[]; };这就是一个柔性数组,柔性数组是在结构体中是未知大小的。struct S { int n; int arr[0]; };上面这种写法也可以。 当我们进行编译时,编译通过。
柔性数组特点: 下面举例说明柔性数组的特点:假设需要动态开辟一块内存空间,我们可以这样操作:typedef struct S { int n; int arr[]; };当我们计算这个柔性数组的大小时,结果如下: 看到结果是4,可能你会疑惑,别着急,这就是柔性数组的第一个特点:特点1:sizeof计算结构体大小时,不包括柔性数组的大小所以计算上面的结构体的大小时,仅计算n大小,在进行结构体内存对齐后,结果是4 。特点2:柔性数组成员之前必须至少有一个其他成员。
本文共计1663个文字,预计阅读时间需要7分钟。
特征数组的概念 + 特征数组的特性 + 局部性原理 + 特征数组对特征数组的理解,让你从零开始了解特征数组,它是指数组,其元素具有动态变化特性。
柔性数组概念
- 柔性数组特点
- 局部性原理

