c语言中,指针和指针地址的问题。

如题所述

第1个回答  2019-12-17
第一次打印出来的是数组的首地址,第二次打印出来的是指针p自己的地址;指针p的本质其实也是一个用来存放地址的变量,那么既然是变量总会有地址,采用&p打印出来的就是它自己的地址。而二级指针(指向指针的指针)的本质是一个用来存放指针地址的变量;
比如int
*p;//指针;
int
**pp
=
&p;//指向指针的指针;
*pp与p是等价的
第2个回答  2019-07-31
a=p1==&m;
因为逻辑运算符等号
==
的优先级比赋值运算符
=
高,所以这个表达式其实就是 a=(p1==&m);
c语言里面非零为真,0为假,因为 p1==&m
表达式为假,所以
a
的值为0。。
c语言里面,对于
a/b,如果
a

b
都是
int
类型的话,那么 a/b
表示的是整除,所以在这里
-4/6
=
0。。
所以
b
的值为
7。。