问答网

当前位置: 首页 > 知识问答 > c语言的 和 的优先级

c语言的 和 的优先级

知识问答 浏览4次

在C语言中“==”的优先级低于“+”的优先级。

C语言总共有15个优先级,数字越大所代表的优先级越高。

15优先级有: 强制,下标,成员,结合性为从左向右,从左向右其实就是我们正常的数**算符的结合顺序。

强制:()这个符号所代表的含义可以有 类型转换,参数表,函数调用。

下标:[] 就是数组元素的下标。

成员: -> 与. 这两个符号代表的是结构型和共用型成员。

14优先级有:逻辑,位,算术,指针,算术,长度,它们的结合性为自右向左

逻辑: !

位 :~

算术:++,--

指针: &,*

算术:+,-,这个是取正,取负

长度:sizeof(),这个得到的是数据的长度

13优先级为:* ./ .%.即乘除取模运算符

12优先级为: +.-即就是加减运算符

11优先级为:<<与>>即右移位和左移位运算符

10优先级为:>=,>,<=,<

9优先级为:==,!=

8优先级为:&即位逻辑与

7优先级为:^即位逻辑按位加。

6优先级为:|即位逻辑或。

5优先级为:&&即逻辑与

4优先级为:||即逻辑或

13 到 4这些优先级它们的结合性为自左向右

3优先级为:“? :”即条件运算符

2优先级有:赋值,自反赋值,它们的结合性为自右向左

赋值:=

自反赋值:+=,-=,*=,/=,%=,&=,^=,|=,<<=,>>=

1优先级为:“,”即逗号运算符,它的结合性是自左向右。

结合性为自左向右的运算符:

对于双目运算符(运算时含有两个变量的运算符),但也有一些单目运算符,它们为[],(),还有一些其它的运算符如“,”。

结合性为自右向左的运算符:

单目运算符(即运算时只有一个变量),还有一些其它的运算符如条件运算符“? :”。