C++ NULL 指针

返回上一级

声明指针变量的时候,如果没有确切的地址可以赋值,为指针变量赋一个 NULL 值是一个良好的编程习惯

赋为 NULL 值的指针被称为 指针

NULL 指针是一个定义在标准库中的值为零的常量

/**
 * file: main.cpp
 * author: 简单教程(www.twle.cn)
 *
 * Copyright © 2015-2065 www.twle.cn. All rights reserved.
 */

#include <iostream>

int main ()
{
    int  *ptr = NULL;

    std::cout << "ptr 的值是 " << ptr << std::endl;

    return 0;
}

编译和运行以上范例,输出结果如下

ptr 的值是 0x0

内存中的地址 0

大多数的操作系统上,程序不允许访问地址为 0 的内存,因为该内存是操作系统保留的

内存地址 0 有特别重要的意义,它表明该指针不指向一个可访问的内存位置

但按照惯例,如果指针包含空值( 零值 ),则假定它不指向任何东西

检查空指针

检查一个空指针,可以使用 if 语句

if( ptr )     /* 如果 ptr 非空,则完成 */
if( !ptr )    /* 如果 ptr 为空,则完成 */

因此,如果所有未使用的指针都被赋予空值,同时避免使用空指针,就可以防止误用一个未初始化的指针

很多时候,未初始化的变量存有一些垃圾值,导致程序难以调试

返回上一级

C++ 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.