C语言运算符的优先级

Posted TPMer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言运算符的优先级相关的知识,希望对你有一定的参考价值。

一、运算符的优先级表

C 语言的符号众多,由这些符号又组合成了各种各样的运算符。既然是运算符就一定有其特定的优先级,下表就是C 语言运算符的优先级表: 注:同一优先级的运算符,运算次序由结合方向所决定。

上表不容易记住。其实也用不着死记,用得多,看得多自然就记得了。也有人说不用记这些东西,只要记住乘除法的优先级比加减法高就行了,别的地方一律加上括号。这在你自己写代码的时候,确实可以,但如果是你去阅读和理解别人的代码呢?别人不一定都加上括号了吧?所以,记住这个表,我个人认为还是很有必要的。

二、一些容易出错的优先级问题

上表中,优先级同为1 的几种运算符如果同时出现,那怎么确定表达式的优先级呢?这是很多初学者迷糊的地方。下表就整理了这些容易出错的情况: 这些容易出错的情况,希望读者好好在编译器上调试调试,这样印象会深一些。一定要多调试,光靠看代码,水平是很难提上来的。调试代码才是最长水平的。

以上是关于C语言运算符的优先级的主要内容,如果未能解决你的问题,请参考以下文章

《C程序设计语言》笔记 参考手册3

逆波兰算术表达式 C语言

C语言运算符的优先级

C语言二级第四章--选择结构

[c语言]运算符的优先级与结合性

c中运算符的优先级怎么排列?