一起来学习如何快速、准确、轻松地记住C语言的运算符优先级顺序!!

本文介绍了如何快速、准确、轻松地记住C语言的运算符优先级顺序。通过一张图表和简洁的解释,将运算符分为六个部分,并提供了记忆技巧:数学>移位>关系>逻辑。此外,强调了单目、三目和赋值运算符的自右向左结合性,以及逻辑运算符的优先级规则。文章适合初学者,帮助他们在没有括号的情况下理解运算符的执行顺序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

本文仅适用于怎么也记不住运算符优先级顺序的人,已经记住了的就飘过吧 ~~

估计很多初学 C 语言的人都会碰到这么一个问题: C 运算符太多太复杂,优先级顺序难记,背了还是忘。那怎么办呢?

在实际写程序的过程中倒还好,实在不知道哪个先哪个后,咱就给它加个括号,而且给程序中添加适当的括号也是非常推荐,值得表扬的,是一个很好的编程习惯。

可是问题又来了,考试(比如说期末考试、等级考试。。)的时候出卷老师可不跟你来这套,他就是不用括号,然后就看着你得意地笑:小样,猜个答案吧 ……

结果往往是以我们的失败而告终!

像我标题所说的,如何快速、准确、轻松地记住 C 语言的运算符优先级顺序呢?(下面的内容都出自《 C Traps and Pitfalls 》,不过我用简单点的语言给概括一下)

首先来张图 ,别晕,仔细看看还是层次分明的

 


咱们就来解释一下这张图的内容,下面就单刀直入,不废话了

这是 C 语言中所有运算符优先级的表,左边一个大箭头一看就知道:从上到下,优先级依次降低;

然后看整体最粗的蓝色线,它将所有的运算符分为六个部分,最上面 4 个优先级最高,书上说它们其实不算严格意义上的运算符,记住就行了,应该没啥问题;接下来有点多了,不过他们有个通称就是 单目运算符 ;再接下来最多的那个,怎么记呢? 双目运算符 ;再接下来这一个你肯定猜到了: 三目运算符 ;紧随其后的就是赋值运算符了,注意这里包涵很多种的赋值运算符: = op= ;逗号运算符优先级最低;

上面的弄懂了的话,对于运算符优先级的掌握就成功一大半了,其中要注意单目、三目和赋值运算符的结合性是自右向左的

然后就到了中间最大一块了,如何记住双目运算符之间的优先级呢?四个字:数移关逻。数学 > 移位 > 关系 > 逻辑,简单吧?

数学运算符,小学生都知道,先乘除(这里加个模)后加减;
移位就没啥说的了;
关系运算符中,大小判断优于等于判断;
逻辑运算符下面又有点小复杂 ,黄色的线将上下一分为二,按位逻辑 > 顺序逻辑;同时逻辑与 > 逻辑或;按位异或 ^ 居于与或之间。

所有的 C 语言运算符优先级和结合性都介绍完了,简单吧?

如果你以前没记住又看得比较快,估计到这里你还是没记住,没关系,无穷循环,记住了就 break

给个小例子
在使用指针的时候经常碰到诸如 *p++ (*p)++ 这样的东东,现在是不是一眼就看明白了? * ++ 都是单目运算符,优先级相同,自右向左 ……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值