字符串的本质是 地址
访问未初始化的指针变量是不允许的,因为访问未初始的指针变量指向随机,所以定义指针变量要进行初始化,既给指针变量一个固定的地址储存
#include <stdio.h>
void main()
{
int num =123;
int *pi =#
//定义*pi的初始化指向num变量的地址
char *ps ="hangge";
//定义*ps的初始化指向字符串“hangge”
void *pv;
pv = pi;
printf("pi: %p,pv: %p\n",pi,pv);
printf("pv: %d\n",*(int *)pv);
//*(int *)pv是对 (int *)pv的解引用既解析指针pv中的地址得到该地址中保存的值
pv = ps;
printf("ps: %p, pv: %p\n",ps,pv);
printf("*pv: %s\n",(char *)pv);
//此处没有解引用,输出的值为“hangge”,可认为输出的是指针pv中的地址既字符串的终极本质是地址
}