各位C#的高手大侠进来一下,是关于解释器的问题

来源:百度知道 编辑:UC知道 时间:2024/06/06 06:39:31
不是关于C#的解释器,而且C#也不是解释的.
而是用C#写一个解释器的问题.
关于错误显示的,
用我写的解释器
分析一段规定的语言的代码,然后发现有若干处词法错误,比如标识符以下划线结尾了之类的,已经得到了这个错误发生的那个字符的位置,就是整个字符串的第几个字符,现在我想把整个错误列表中的错误全部输出来,然后显示错误发生的行号
现在的问题就是,怎样通过这个字符的位置得到它的行号???????

用“\n"把整段字符拆分成数组,数组中每个元素都语法检查一次,就能得到行号了。

你想做的是 词法编译器吧,记得我学编译原理的时候做过一个还带语法分析的 小编译器,当时我是按行编译的,所以很容易知道第几行,我想你能不能也这么做。把每一行当成一个单位,相当于嵌套的编译。