gpt4 book ai didi

Bison - 运算符优先级

转载 作者:行者123 更新时间:2023-12-01 09:32:36 26 4
gpt4 key购买 nike

我对 Bison 中的运算符优先级和关联性有疑问。

在每个示例中,我看到的产品都类似于 expr 'op' expr,例如:http://dinosaur.compilertools.net/bison/bison_8.html

但如果我使用 bison %left 和其他关联工具,我会使用如下语法:

  expr|     expr binop expr
| expr relop expr
| expr logical_op expr

 binop: '+' 
| '-'
| '*'
| '/'
;
relop: EE
| NE
| LE
| '<'
| GE
| '>'
;
logical_op: AND
| OR
;

是否会使用关联性和优先级规则?

或者我需要为每个运算符写明确的 expr 'op' expr 吗?

我在问,因为当我尝试使用我发布的语法时,我会收到有关冲突的警告。

但是当我手动编写像 expr '+' expr 这样的产品时,我没有收到任何警告。

最佳答案

为了使优先规则起作用,终端本身必须出现在模棱两可的产生式中。因此,您不能将终端分组为非终端并保留使用优先规则的能力。

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

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