【发布时间】:2015-01-05 01:10:04
【问题描述】:
我想知道 &a[i] 和 &a[i-1]+sizeof(int) 打印的地址值是否相同? 当我打印值时,它变得不同了。怎么样? eg.say a[0] 在 1000 和 a[1] 在 1002 ,那么 a[1] 和 &a[i-1]+sizeof(int) 其中 i=1 应该返回相同的权利吗?
代码sn-p:
{
int a[3]={100,200,300};
print &a[1] and print &a[0]+sizeof(int)
}
【问题讨论】:
-
我想我理解了这个问题,但不清楚,请添加一些示例代码。
-
他问它是否在任何情况下都连续映射到 ram 上
-
&a[i-1]+sizeof(int)-->&a[i-1]+1 -
我认为 OP 的意思是
int a;。 -
@BLUEPIXY
&a[i-1]+sizeof(int)--> 只有当sizeof(int)等于1时,&a[i-1]+1才会为真。