/Compilers

NJU-Compilers

Primary LanguageC

### 编译使用说明
1. 在Code文件夹中使用`make`或`make parser`进行编译,可以得到可执行文件`parser`和一系列辅助文件。
2. 使用`make tst`进行测试,*注意是tst不是test(因为tst方便qwq)*,默认测试文件的存放路径是`LAB1/Test/test1.cmm`。
3. 在`main.c`中取消对`yydebug=1`的注释,并使用`make debug`可以得到bison的状态机调试模式。回到正常编译状态时要复原注释。

### 实验固定要求
文件结构:
	/Lab
	    /Code
		Makefile
		lexical.l
		syntax.y
		main.c
		  .
		  .
	    /Test
		test1.cmm
		test2.cmm
		  .
		  .
	    /report.pdf
	    /parser
	    /README

Code目录:	
		1. 用于存放所有flex,bison,C语言源文件和头文件以及Makefile;
		2. 该目录下有一个Makefile文件,请使用它。除了定义和修改一些伪目标外不可对文件做其它修改(否则助教测试失败必扣分);
		3. 请勿在该目录下创建子目录(如include、src等),实验的代码量还没有复杂到需要将头文件以及源文件分开管理的程度;
		4. 避免不合理的文件include关系,比如一个C文件include另一个C文件,Makefile执行时会报错。
	
Test目录:	1. 用于存放测试文件以及输出文件(如果有输出文件的话);
		2. 请将测试文件以".cmm"作为后缀名。

report.pdf:	1. 该文件为你所需提交的实验报告,请自行完成后替换该文件。请在实验报告里写明姓名,学号和联系邮箱。
		(如果是组队提交的,只需一份实验报告)

parser:	1. 用你编译生成的二进制文件替换该文件。