程序 指针变量 int a=5 ,*p1=&a ,*p2;*p1=*p1+*p2 这里*p2是什么?是*p2本身的地址吗,*p2本身有没有地址?跟上面的问题无关 *p2=2if(*p1>*p2) 这样写正确,if(p1>p2) 这样写是不是一样?

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/07 18:06:49

程序 指针变量 int a=5 ,*p1=&a ,*p2;*p1=*p1+*p2 这里*p2是什么?是*p2本身的地址吗,*p2本身有没有地址?跟上面的问题无关 *p2=2if(*p1>*p2) 这样写正确,if(p1>p2) 这样写是不是一样?
程序 指针变量 int a=5 ,*p1=&a ,*p2;
*p1=*p1+*p2 这里*p2是什么?是*p2本身的地址吗,*p2本身有没有地址?
跟上面的问题无关 *p2=2
if(*p1>*p2) 这样写正确,if(p1>p2) 这样写是不是一样?

程序 指针变量 int a=5 ,*p1=&a ,*p2;*p1=*p1+*p2 这里*p2是什么?是*p2本身的地址吗,*p2本身有没有地址?跟上面的问题无关 *p2=2if(*p1>*p2) 这样写正确,if(p1>p2) 这样写是不是一样?
int a =5 ,*p1=&a;
则*p1就等于5,也就是p1所指向变量的值,这样说你明白吗?
而p1所代表的是所指向的变量的地址,也就是a的地址.
所以,你第二个问题,第一个if是比较的值,而第二个if是比较的地址,两者写法都对,可以应用于不同场合,但是两者所代表的不一样,因为值大的不一定地址就大.