Posted on 2009-09-25 23:22
S.l.e!ep.¢% 阅读(188)
评论(0) 编辑 收藏 引用 所属分类:
C++
#include <stdio.h>
int main()
{
int a[5] = {1,2,3,4,5};
int *ptr = (int*)(&a+1);
int test1 = *(a+1);
int test2 = *(ptr-1);
printf("0x%x 0x%x \n" , test1, test2 );
}
指针 + 1 = 指针地址 + sizeof(类型)
a 的类型是 int (*)[5]
&a + 1 = &a + sizof(int)*5
*ptr 指向的是 a[5]