Linux Bison声明和文法

运维 系统运维
这段文法与Bison手册非常类似,不同之处在于它使用了名字作为终端符号和标识符的简写形式。标识符是在赋值语句中进行定义和初始化的,并且可以在任何允许使用的地方使用。

这段文法与Linux Bison手册非常类似,不同之处在于它使用了名字作为终端符号和标识符的简写形式。标识符是在赋值语句中进行定义和初始化的,并且可以在任何允许使用的地方使用。下面给出了一个示例声明和文法。

Linux Bison声明
 

  1. /*terminalsymbols*/  
  2. %token<string>IDENTIFIER  
  3. %token<value>VALUE  
  4. %type<value>expression  
  5. /*operator-precedence  
  6. *top-0:-  
  7. *1:*/  
  8. *2:+-  
  9. */  
  10. %leftADDSUB  
  11. %leftMULTDIV  
  12. %leftNEG  
  13. %startprogram 


示例Linux Bison文法
 

  1. program  
  2. :statementSEMICOLONprogram  
  3. |statementSEMICOLON  
  4. |statementerrorSEMICOLONprogram  
  5. ;  
  6. statement  
  7. :IDENTIFIERASSIGNexpression  
  8. |expression  
  9. ;  
  10. expression  
  11. :LBRACEexpressionRBRACE  
  12. |SUBexpression%precNEG  
  13. |expressionADDexpression  
  14. |expressionSUBexpression  
  15. |expressionMULTexpression  
  16. |expressionDIVexpression  
  17. |VALUE  
  18. |IDENTIFIER  
  19. ;  

 

【编辑推荐】

  1. Linux Bash命令关于程序调试详解 
  2. Linux Bash命令关于快捷键应用
  3. Linux Bash Shell系统的应用详解
  4. Linux Bash具体安装步骤及使用介绍
  5. Linux Bash命令查询相关事件详解
     
责任编辑:chenqingxiang 来源: 中国IT实验室
相关推荐

2010-06-23 17:42:28

Linux Bison

2009-09-02 09:13:16

C#文法产生式

2018-01-10 12:42:09

Linux磁盘文件系统

2010-03-01 14:45:07

Linux文件重定向

2010-08-02 16:15:20

ibmdwLinux

2009-10-12 11:14:51

LinuxLinux磁盘文件系统管理

2020-11-19 08:44:35

Linux

2010-08-05 11:03:55

创建分区文件系统

2023-05-13 17:43:17

Linux文件文件夹

2021-08-16 13:34:07

Linux终端删除文件

2009-03-11 19:09:52

Linux兼容内核Wine

2015-08-05 09:40:26

2009-10-13 14:31:26

:Linux系统磁盘系统管理

2013-01-24 09:29:16

2018-02-05 09:15:17

Linux命令文件数量

2023-09-03 17:09:58

LinuxSAN LUN磁盘

2018-01-24 15:35:22

Linux隐藏文件管理器

2023-09-05 15:17:48

LinuxLUN磁盘

2014-02-12 10:58:05

Linux文件夹文件权限

2020-05-12 09:02:29

Linux磁盘硬盘
点赞
收藏

51CTO技术栈公众号