c语言的运算符的结合性和优先级(c语言的运算符)

导读您好,现在软糖来为大家解答以上的问题。c语言的运算符的结合性和优先级,c语言的运算符相信很多小伙伴还不知道,现在让我们一起来看看吧!1...

您好,现在软糖来为大家解答以上的问题。c语言的运算符的结合性和优先级,c语言的运算符相信很多小伙伴还不知道,现在让我们一起来看看吧!

1、C语言中算术运算符有以下这些实例:#include int main()   int a = 21; int b = 10;   int c ;   c = a + b;   printf("Line 1 - c 的值是 %d", c );  c = a - b;   printf("Line 2 - c 的值是 %d", c );   c = a * b;   printf("Line 3 - c 的值是 %d", c );   c = a / b;   printf("Line 4 - c 的值是 %d", c );   c = a % b;   printf("Line 5 - c 的值是 %d", c );   c = a++;  // 赋值后再加 1 ,c 为 21,a 为 22   printf("Line 6 - c 的值是 %d", c );   c = a--;  // 赋值后再减 1 ,c 为 22 ,a 为 21   printf("Line 7 - c 的值是 %d", c ); return 0;}当上面的代码被编译和执行时,它会产生下列结果:Line 1 - c 的值是 31Line 2 - c 的值是 11Line 3 - c 的值是 210Line 4 - c 的值是 2Line 5 - c 的值是 1Line 6 - c 的值是 21Line 7 - c 的值是 22扩展资料:C语言中,除了算数运算符,还提供以下运算符:关系运算符2、逻辑运算符3、位运算符4、赋值运算符5、杂项运算符运算符优先级:C语言中,运算符的运算优先级共分为15 级。

2、1 级最高,15 级最低。

3、在表达式中,优先级较高的先于优先级较低的进行运算。

4、而在一个运算量两侧的运算符 优先级相同时,则按运算符的结合性所规定的结合方向处理。

5、运算符结合性:C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。

6、例如算术运算符的结合性是自左至右,即先左后右。

7、如有表达式x-y+z 则y 应先与“-”号结合,执行x-y 运算,然后再执行+z 的运算。

8、这种自左至右的结合 方向就称为“左结合性”。

9、而自右至左的结合方向称为“右结合性”。

10、最典型的右结合 性运算符是赋值运算符。

11、如x=y=z,由于“=”的右结合性,应先执行y=z 再执行x=(y=z)运算。

12、C语言运算符中有不少为右结合性,应注意区别,以避免理解错误。

13、优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。

14、所有的优先级中,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。

15、其它的都是从左至右结合。

16、具有最高优先级的其实并不算是真正的运算符,它们算是一类特殊的操作。

17、()是与函数相关,[]与数组相关,而->及.是取结构成员。

18、其次是单目运算符,所有的单目运算符具有相同的优先级,因此在我认为的 真正的运算符中它们具有最高的优先级,又由于它们都是从右至左结合的,因此*p++与*(p++)等效是毫无疑问的。

19、参考资料来源:百度百科-C语言运算符。

本文就为大家分享到这里,希望小伙伴们会喜欢。

免责声明:本文由用户上传,如有侵权请联系删除!