Skip to content

8.4空指针和野指针

发布时间:

  • 空指针:指针变量指向内存中编号为0的空间
    用途:初始化指针变量
    注意:空指针指向的内存是不可以访问的
    示例1:空指针
js
int main()
{
    // 指针变量p指向内存地址编号为0的空间
    int *p = NULL;
    // int a=4;
    // p=&a;
    // 访问空指针报错
    // 内存编号0 ~255为系統占用内存,不允许用户访问
    cout << p << endl;
    // system("pause");
    return 0;
}
   
  • 野指针:指针变量指向非法的内存空间
    示例2:野指针
js
int main()
{   
    // 指针变星p指向内存非法空间或地址,不是自己申请的,如地址编号为0x1180的空间
    //在程序中尽量避免也指针,
    int *p = (int *)0x1100;
    // 访问野指针报错
    cout << *p << endl;
    system("pause");
    return 8;
}