在声明中,int* p = NULL; 表示将指针p初始化为一个空指针,即指向内存地址为0的位置。而在测试中,p != NULL 表示判断指针p是否指向了一个非空的内存地址。
在C/C++中,指针是一种特殊的变量类型,它存储了一个内存地址。当我们声明一个指针变量时,可以选择将其初始化为一个特定的值,如NULL。NULL是一个宏定义,表示一个空指针常量,其值通常为0。
在测试中,p != NULL 是在判断指针p是否指向了一个有效的内存地址。如果p不等于NULL,说明p指向了一个非空的内存地址,即p已经被正确地初始化为一个有效的指针。
而p != NULL 是在判断指针p所指向的内存地址中的值是否为NULL。这种比较通常用于判断指针所指向的内存中是否存储了有效的数据。在这个问题中,并没有涉及到p的具体值,因此不需要使用*p != NULL 来匹配声明。
总结起来,int p = NULL; 是将指针p初始化为空指针,而p != NULL 是判断指针p是否指向了一个非空的内存地址。而p != NULL 则是判断指针p所指向的内存中的值是否为NULL。
领取专属 10元无门槛券
手把手带您无忧上云