Ear*_*rlz 1 c c# string porting c-preprocessor
我之前在C中创建了一个基本的解释器,它有一个预处理器,它解决了大量的解析负担等问题.我想将此预处理器移植到C#中使用,我遇到了麻烦,因为我对C#还是很陌生.
我的旧预处理器就是这样的
var $mine= this;
//weird intendtation
var $something + $a=$b;
会出现相当机器可读的东西
var\0$mine\0=this\0;\0var\0$something\0+$a\0=$b\0;\0
(使用\ 0为NULL,以便我可以非常轻松地获取变量和标识符的名称)
好吧,使用我的旧代码,我一次只读取一个字节,并根据它的空格和最后一个字符是什么,然后它将插入字符,插入NULL或忽略字符.
好吧,我无法将其转换为C#代码.我正在使用StringBuilder类并使用Insert()一次插入一个字符.但我的问题是我不能使用\ 0作为字符值.如何使标识符名称仍然非常容易阅读呢?在这种情况下,拥有一个字符串数组或字符串构建器对象会更好吗?
我建议一次使用List<string>,并在列表中添加一个项目.
这为您提供了字符串数组的所有可用性,但它会动态增长.如果使用这种方法,解析文件的C#代码应该比C代码更简单,更容易理解.
| 归档时间: |
|
| 查看次数: |
216 次 |
| 最近记录: |