编译原理pl0修改
项目要求
除了文档里面的要求,还有一些隐藏要求已经被确认了。
- 可以修改pl0源代码,一般是认为修改pl0编译程序,使得可以运行pl0源代码,但是实际上可以一起修改pl0源代码和pl0编译程序,使得最后可以运行。
- read和write语句,能够实现读入integer数据和输出integer数据即可,而且从键盘或文件输入输出只要完成一项即可,没必要键盘和文件流都完成,此项目完成的是键盘输入和输出。
环境设置
我是用的Free Pascal IDE,以及Vscode,Vscode可以下载pascal的编译和格式插件,然后在user setting
里面设置变量,格式化之后代码格式就会很整齐。
用{[^}]+}
正则表达式替换空,可以去掉所有的注释。
用^\s*(?=\r?$)\n
正则表达式替换空,可以去掉所有的空行。
part1修改
part1的要求就是可以运行就行了。
文件流的修改
首先是program PL0 ( input, output);
,第一行参数可要可不要,可以随后在后面设置,其中有一行代码page(output);
代表着输出文件到output里面,可以直接删掉,因为page
没有定义。然后在一开始var
申明里面加上