songsinuo 发表于 2021-10-17 11:27:54

数组偏移量

请帮忙解答一下呗,没看懂



jhq999 发表于 2021-10-17 19:07:01

本帖最后由 jhq999 于 2021-10-17 19:08 编辑

a
例子:
int a;
&a=&a+(1*4+3)*4;
所以偏移量:(1*4+3)*4

songsinuo 发表于 2021-10-17 23:31:14

jhq999 发表于 2021-10-17 19:07
a
例子:
int a;


emmmm看倒是看懂了 请问为啥要这么相乘呀?

易道云 发表于 2021-10-18 03:19:52

所谓的偏移量就是在你的原类型大小上加1,例如int a[]={2,5}; 但是当你输出a+1的时候结果显示5,

易道云 发表于 2021-10-18 03:24:29

可能这样说的,你还是不太明白。数组在内存中是连续的内存空间,所以我刚刚加1实际上是加的int类型的大小也就是4个字节,这也说明了上面为什么是乘以4。

村里小黑 发表于 2021-10-18 08:53:57

本帖最后由 村里小黑 于 2021-10-18 08:56 编辑

songsinuo 发表于 2021-10-17 23:31
emmmm看倒是看懂了 请问为啥要这么相乘呀?

乘是因跨过去了i个完整得一维数组,每个数组里有m个元素,然后再加上下一个数组只偏移了j个个数,每一个占元素4个字节,合并一起乘4
页: [1]
查看完整版本: 数组偏移量