&a是int型变量a的地址
(char *)将int型指针(指向4个字节)转换成char型指针(指向一个字节)
char *p声明一个char型指针变量,接受转换的地址。
附注:
#include
int main(){
int a=301;
char *p=(char *)&a;
printf("%d\n%d\n",*++p,*p);
//printf("%d\n%d\n",*p,*++p);
return 0;
}
再附注:
int a=301在内存中二进制存储形式
00000000 000000000 00000001 00101101
把变量a的地址强制为char *型地址赋给char *型指针p。