c++中if(*p)和if(p)有什么区别 c++ if()里是一个指针有什么含义 例如 char *p...

作者&投稿:靳君 (若有异议请与网页底部的电邮联系)

if(p) 一个是判断p的指针值是否为0

if(*p)  一个是判断p指向的内存地址中的值是否为0

指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。意思是通过它能找到以它为地址的内存单元。在高级语言中,指针有效地取代了在低级语言,如汇编语言与机器码,直接使用通用暂存器的地方,但它可能只适用于合法地址之中。指针参考了存储器中某个地址,通过被称为反参考指针的动作,可以取出在那个地址中存储的值。

例如:

//参考代码如下:
#include "iostream"
using namespace std;
int main()
{
int a=0,*p=&a;
if(p) cout<<"p为真"<<endl;
else  cout<<"p为假"<<endl; 

if(*p) cout<<"*p为真"<<endl;
else  cout<<"*p为假"<<endl; 
return 0;
}
/*
运行结果:
p为真
*p为假
*/


if(p) 一个是判断p的指针值是否为0
if(*p) 一个是判断p指向的内存地址中的值是否为0

if(*p)和if(p)有区别吗?有什么区别?p是指针变量。~

if(*p)是判断指针p所指向地址存放中的值;而if(p)判断指针p本身是否为空。

if(p)
判断的依据是什么,是否为0,也就是NULL,指针也是一个值!
指针也可以直接输出吗 不应该是*p吗

可以直接输出,输出地址呀

c++中if(*p)和if(p)有什么区别
答:if(p) 一个是判断p的指针值是否为0 if(*p) 一个是判断p指向的内存地址中的值是否为0 指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为...

在C++中if(p)、while(p)、if(!p)、while(!p)、if(*p)、while(*p)、if...
答:没什么区别啊,都是先判断括号中的值,是0就不执行,非0就执行 就比如if(p)、while(p)是p为真执行,即p非0执行。if(!p)、while(!p)是!p,!p为真时执行,即p为假是执行。

if(*p)是什么意思? c++ 求大神解答
答:p是当前p指向的字符,在字符串结尾,*p必为0。这时while或if都得出“假”,条件不成立。不过必须指出,这样写有一个小漏洞,如果p为空指针时将出现非法操作。所以一般是这样写:if(p&&*p)由于C对于逻辑操作是短路型的,所以这样就可避免对空指针的操作,程序将更加健康。

if(*p != NULL)与if(p != NULL)
答:p就是p[0]p!=NULL是恒成立的。因为p是一个地址常量。而*p!=NULL,是把p指向的一段内存中的数据当做指针来使用,这段内存由于已经被你初始化为0,所以这项判断也成立。但意思就不同了。

...里是一个指针有什么含义 例如 char *p; if(p) 判断的依据是什么...
答:if(p)判断的依据是什么,是否为0,也就是NULL,指针也是一个值!指针也可以直接输出吗 不应该是*p吗 可以直接输出,输出地址呀

C语言中if(p)是什么意思
答:判断指针是否为空,也就是说指针是否指向了具体的结构体了

在c语言里,if (x)等价于if (x!=0)、if (!x)等价于if (x==0)吗?
答:在c语言中0为“假”,非0为“真”。if(x):1)如果x不等于0(非0),那么if(x)就是”真“,所以if(x!=0)就是“真”。2)如果x等于0(0),那么if(x)就是“假”,if(x!=0)也就是”假“的,因为x明明等于0 if(!x):1)如果x等于0(0),非运算(!)一下,可以简单理解为取反...

if()语句中括号内的表达式用法
答:就是判断它是否不为0而已。char *p;if (p)相当于 if (p!=0)相当于 if (p!=NULL)

C语言里int *p; if(*p==null)和if(p==null)有什么区别 我不怎么理解...
答:带*号是取值的意思,即取指向地址的值。所以if(*p == null)是判断指针p指向的地址存储的值是否为null if(p == null)是判断指针p是否指向null 希望对你有帮助。

C语言中if(!p)是什么意思?急?
答:1、!p意思就是非p,如果p的值为0,!p判定为真;如果p的值不是0,!p的判定为假。2、如果指针没有内容,NULL。即p的值为0,!p判定为真。3、如果指针不指向空的话执行if里面的语句。判断指针是否为空,也就是说指针是否指向了具体的结构体。4、C语言中%p用来输出指针类型自身的值。也就是说...