c语言 int *ptr1 = (int*)(&a + 1); 是什么意思

如题所述

(&a + 1)
先取变量a的地址,并根据a的地址获得下一个与a同类型的相邻地址。

(int*)(&a + 1)
把这个相邻地址显式类型转换为int类型的地址

int *ptr1 = (int*)(&a + 1);
定义一个int指针变量ptr1,并让它指向通过显式类型转换取到的这个地址。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-08-24
&a一个地址 假设为 0x0000
&a+1为0x0001
ptr1是个int指针 指向空间存储的值就是0x0001
相似回答