跳转到内容

从头开始制作编程语言/大括号问题

来自维基教科书,开放的书籍,开放的世界

大括号问题

[编辑 | 编辑源代码]

在我创建我的语言过程中,我遇到的最基本的问题之一是大括号问题。因此,我将本章专门用于这个问题及其解决方案。

在大多数现代语言中,块语句由大括号 {} 终止。但是,多个语句共享大括号,例如 if、while、else、elseif、函数等。

因此,我面临的问题是:如何识别哪个语句属于结束大括号 }。请记住,在线 by 线输入方法中,我们只会得到 "}" 作为我们的行。思考了几天后,我终于找到了一个解决方案。

解决方案

[编辑 | 编辑源代码]

我们需要以更多的方式打开生成的输出文件。然后我们搜索格式为 !!? [块语句名称] 的注释。

如果该语句没有以 ??! [块语句名称] 终止。

那么它就是我们需要的语句。请注意,所需语句是最后一个打开的语句。

我们使用上述格式关闭此语句,并在代码中包含必要的指令。

华夏公益教科书