c语言中的运算符优先级高低是什么意思

 我来答
床前明月儿
高能答主

2020-02-22 · 探索生活中的另一种可能
床前明月儿
采纳数:101 获赞数:171929

向TA提问 私信TA
展开全部

运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算。例如:2+3,其操作数是2和3,而运算符则是“+”。

运算符的优先级是从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。表达式的结合次序取决于表达式中各种运算符的优先级。优先级高的运算符先结合,优先级低的运算符后结合,同一行中的运算符的优先级相同。


扩展资料

优先级与求值顺序无关。如a+b && b*c,虽然*优先级最高,但这个表达式求值顺序是从左到右。

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

相同优先级中,按结合性进行结合。大多数运算符结合性是从左到右,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。

指针最优,单目运算优于双目运算。如正负号。先算术运算,后移位运算,最后位运算。请特别注意:1 << 3 + 2 & 7等价于 (1 << (3 + 2))&7。逻辑运算最后结合。

参考资料来源:百度百科-运算符优先级

yylx99
推荐于2018-03-19 · TA获得超过191个赞
知道答主
回答量:122
采纳率:100%
帮助的人:74万
展开全部
要了解c语言运算符优先级高低就先从通常数学上运算优先级高低说起。
通常,一个数学算式里如果有加减乘除和括号,我们会先算括号里面的式子,再算括号外面的乘除再然后才是加减。那么这时候我们说括号的优先级比加减乘除的要高,所以我们就先计算括号里的式子。然后是乘除,再然后才是加减。其中加减乘除就是运算符。所以运算符的高低决定了运算的先后顺序。
同理。C语言中的运算优先级和这一个样,只要你把运算符的优先级记住就可以了。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
拥抱枯木
2010-04-12 · TA获得超过285个赞
知道小有建树答主
回答量:390
采纳率:0%
帮助的人:242万
展开全部
就是有不同运算符出现在同一个表达式中,求表达式的值时,优先级高的运算符先结合求值再求优先级低的,比如a+b*c,明显*的优先级比+高,所以先算b*c,得到的值加上a。另外有些符号优先级相同,那就有从左到右结合,和从右到左结合,还需要再详细吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
skylm1234
2010-04-12 · TA获得超过306个赞
知道小有建树答主
回答量:198
采纳率:100%
帮助的人:237万
展开全部
也就是说在一个表达式中它先计算什么再计算什么,
举个简单的例子。a+b*c/d-e
谁高就先算谁的。*/高于+-,所以先计算乘除,再计算加减。。
还有很多的运算符,楼主如果要想了解所有运算符的优先级的话,如果有书的话书后应该都有的,没书在网上搜搜吧。这个很重要的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CC星际解说
2010-04-12 · TA获得超过131个赞
知道小有建树答主
回答量:183
采纳率:0%
帮助的人:78.8万
展开全部
比如 1+3*3
因为 *的优先级比+高,所以先运行3*3,在+1。
其实这个不用在意,也不需要背,只要在你需要的运算顺序下加()就行了。
比如 1+(3*3)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式