使用指针的常见的错误:
① 使用未初始化的指针
int *pa; printf("\%d",*pa); /*输出一个随机的结果*/
也就是所谓的“野指针”,很危险。
② 指针赋值常量
float *pf=12.345 /*编译报错*/
int *pi=100 /*不能将一个非地址的值存放到指针变量中*/
③ void 类型指针表示类型不确定的指针
int a=100;void *pa=&a;printf("\n%d",*pa); /*错误*/
int a=100;void *pa=&a;printf(“\n%d”,*(int *)pa); /*正确*/
④ 指针与初始化指针的对象类型不一致
double a=1.2;
int *pa=(int *)&a /*(*pa)将获得意料之外的结果*/