c语言p a 0 ,c语言中p a是啥子意思

2021-03-18 16:15:18 字数 2270 阅读 1568

1楼:谢应宸

贴出对于结构体p的结构定义

2楼:第一啊你

int p,a=5 定义两个有符号的整型变量 p,a,并且对a赋值5 if(p=a!=0) 分两步 从右到左 1、a!=0 是判断a是否等于0 若等于 返回 0 若等于 返回 1 结果是不等于 返回了 1 2、p= 返回值 也就是 p=1 3、这时候,再判断 if(p) 判断结果为真

c语言中p->a是啥子意思

3楼:匿名用户

p 是一个结构体或者共用体类型数据的指针。

p->a表示访问该指针上,名为a的数据成员。

等效于(*p).a

4楼:匿名用户

p是一个结构体类型的指针变量,这个结构体中有一个属性a,这个语句就是取他指向的对象的属性元素a

c语言中if(p=a!=0)是什么意思

5楼:六月天空中的雨

int p,a=5

定义两个有符号的整型变量 p,a,并且对a赋值5if(p=a!=0)

分两步 从右到左

1、a!=0 是判断a是否等于0

若等于 返回 0

若等于 返回 1

结果是不等于 返回了 1

2、p= 返回值 也就是 p=1

3、这时候,再判断 if(p) 判断结果为真,所以输出p的值 ,为10分数。。。。。。晕不晕呀,不厚道~

6楼:

这个 你要了解 运算符的 优先级问题

请看 运算符优先级 列表

!=的优先级 明显高于 赋值运算符

所以p=a!=0的计算顺序是 p=(a!=0)(可以这么理解)a的值是5,所以a!

=0必然是 真 所以 p被赋值1而if的判断条件 变成 if(p=1)即 if(p),即if(1)所以 会执行printf(" %d\n",p) ;

所以输出 1

7楼:回首千寻

(p=a)!=0就是将a的值付给p,判断p不等于0,等价于 a!=0,当然不等啊,a等于5啊

8楼:

int p 为定义变量p

a=5 定义变量a,并赋值a等于5

if(p=a!=0) a!=0赋值于p

因为a!=0为真,所以赋p值为1

9楼:匿名用户

正确答案是1.p赋值是对所以是1

c语言:p->a,与*p->a有什么区别?

10楼:匿名用户

->指针操作符的优先级非常高,于是*p->a就是*(p->a),取得指针p指向的结构体的成员a(也是指针)指向的第一个元素。p->a是取得p指向结构体的成员a,等价于(*p).a

11楼:

p->a 是指 求指针变量p所指的对象的成员a

*p->a 是指 求 指针变量p所指的指针成员a 所指向的空间的值

12楼:匿名用户

前者还是一个指针,后者是一个变量

c语言中*p=a[0]与p=a[0]有什么区别?

13楼:匿名用户

对于指针来说,

*p = a[0],表示向地址为p的内存区域赋值为a[0]。

p = a[0],把变量p的值改为a[0],这个语句正常应用中是错误的。变量p的值为内存地址,这样赋值会丢掉p原来指向的内存。

正确给内存地址赋值应该使用第一句。

14楼:匿名用户

这个是指针和变量的区别:

第一个表示变量p存的是数组a的地址值,即表示指向数组a

第二个表示p和数组a的第一个元素的值一样。

15楼:

有啊,*p是个指针,他储存的是一个变量的地址。你把a[0]里的数据赋给他,是储存在那个变量中,不是在存*p中。另一个p是个变量,a[0]中的数据时存在p中

例如:int *p;

p=&b;

*p=a[0];

b==a[0] 值是放在b中

另一个是放在p中 ,不同的

16楼:

都是赋值语句,p的数据类型不同,被赋值的对像不同而已

*p=a[0] ==>赋值对像不是变量p本身,而是它所指向的对像

p=a[0] ==>赋值的对像就是变量p本身

c语言中有时会定义p a是什么意思不应该是p a吗

1楼 夏成 int a int p a 相当于int p p a 记住就行了 除了定义的时候,其他时候 p 正常情况 只能等于内容 a的值 2楼 匿名用户 int a int p a 或者int p p a c语言中 p a和p a有什么区别 3楼 非常可爱 c语言中 p a和p a只有一个区别就是...

C语言我想问的是p-a是什么意思

1楼 搁浅的珊瑚海 程序定义了一个3行4列的二维数组a,p是指向数组首地址的指针,里面方数组首地址,a 0 是第0行的地址,二维数组不是可以看作元素都是一维数组的一位数组么,所以a 0 也是数组元素a 0 0 的地址,p a 0 就是看p所指向的数组元素的地址跟a 0 0 的位移,12的地址正好是p...

在C语言中“a b”是什么意思,c语言中,a^b是什么意思?

1楼 匿名用户 a 异或 b 按位异或 比如 a 为 5 0101 b 为 7 0111 0010 对应位相同为0, 不同为1 希望对你有帮助。谢谢 c语言中,a b是什么意思? 2楼 匿名用户 按位异或, 例如 include int main 输出结果是8 1010 10 0010 2 1000...