关于%p与变量、指针变量的输出关系
#include<stdio.h>
int main()
{
int i=8;
int *p=&i; //取i的地址并赋给指针p
printf("%p\n",i);
printf("%p\n",&i);
printf("%p\n",p); //输出的是指针p存储的地址
printf("%p\n",&p); //输出的是指针p本身的地址
printf("%x\n",*p); //*p当做一个整体的数,即指针P通过*访问地址上的变量的数据
// %x是以16进制格式输出,但是不带16进制的前缀0x
/* ("%p", i)用地址的格式打印a变量的值,即a所存储的内存地址
printf("%p", &i)打印a变量所在的地址,即a本身的内存地址
*/
}