指针变量的初始化方法。
①定义的同时进行初始化
1、完全初始化
int *p = &a;//用a的地址初始化p这个指针变量
//另外一种描述方法:p指向了a
int *p1 = &a,*p2 =&a;//p1 p2都指向了a
2、部分初始化
int *p2 = &a,*p3;
p3 = &a;//这就叫部分初始化,,,什么卵,鸡肋,
②先定义后初始化。
int *p4;
p4 = &a;//这就叫先定义后初始化。
注意:如果指针没有初始化,里面是一个垃圾值,这时候我们称这是一个野指针。
如果操作一个野指针 一定要避免操作野指针,因为可能会带来意想不到的错误。
1、可能会导致程序崩溃
2、访问你不该访问的数据。
所以指针必须初始化才可以访问其所指向的存储区域。
eg: int *p10;//值是垃圾值,有可能存放的是系统程序的地址。
*p10 = 438;//如果*p10存放的是系统程序的地址,这些写可能会造成系统崩溃。
p10 = &a;//这样写还好,把p10指向了a的地址。
|
|