gpt4 book ai didi

c - 运算符优先级背后的逻辑

转载 作者:行者123 更新时间:2023-11-30 19:09:28 25 4
gpt4 key购买 nike

编译器遵循运算符之间特定优先级的动机是什么。为什么不只是按照代码编写的顺序来设计呢?我的意思是,为什么 "a + b * c" 被视为 "(b * c) + a" ?为什么不遵循与它的书写顺序相同的顺序呢?每次我尝试学习编程语言时,我都很难记住优先级/优先级。有没有简单的方法可以掌握它?

最佳答案

实际上,编写解析器/编译器会更容易,而不必处理运算符优先级。在这种情况下,只需从左到右执行算术即可。

示例:10+20*30 => (10+20)*30 => 30*30 => 900

那么,为什么要处理运算符优先级呢?它来自数学(算术),只是人们选择遵循的一种实践。这不应该是一个麻烦,因为所有语言都具有大致相同的运算符优先级,您不需要学习每种语言的运算符过程。更好的是,方括号或圆括号具有最高优先级,因此如果您不确定,可以使用它们。

您可能想了解为什么 BODMAS规则是首先创建的。

关于c - 运算符优先级背后的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43204469/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com