首页 > 试题广场 >

下面代码会输出什么() int main(int a

[单选题]
下面代码会输出什么()

int main(int argc, char **argv)

{

    int a[4] = {1, 2, 3, 4};

    int *ptr = (int *)(&a + 1);

    printf("%d",*(ptr - 1));

}

  • 1
  • 2
  • 3
  • 4
a指向数组a[0]的地址,&指向a[]的地址,他们的值是相同的,但是相加不同,a+1表示之下下一位,等于a+sizeof(int),&a+1表示指向下一个a[]数组,即等于a+sizeof(a)
发表于 2018-03-09 16:53:10 回复(0)