面试题记录-C语言
面试题记录-C语言
001_int ptr=(int )(&a+1)
下面的输出结果是什么?
|
|
- *(a+1)
- 这里吧
a当成一个指针 - a+1 = a + sizeof(int)
a+1指向a的下一个整形地址即&a[1]
- 这里吧
- (&a+1)
- 先获取a的地址
+1再获取下一个与a同类型(int[5])的相邻地址- &a+1 = &a + sizeof(a)
- 即&a[5],a最后一个元素的下一个地址
- *(ptr-1)
- 同*(a+1)原理
- 指向了&a[5]前一个元素地址
- 即&a[4]
- 结果
- 2,5

