回 帖 发 新 帖 刷新版面

主题:My-C编译器V1.2 – 支持汉语版

之前的My-C编译器,是不支持汉字输入的,会在字段扫描过程中,就提示有非法输入。现在稍作更改,将他改为支持汉语输入。并将关键字,语句等定义出对应的汉语字段。
当然在目前的各类C编译器中,各位也是可以通过define将各关键字定义为汉语别名,同样可以实现“汉语编程”。但本版本的My-C编译器还是对关键字,语句等内配置了汉语字段,这样也可以加快编译速度。
不过说来,这并没有实际的实用意义,只是一种消遣娱乐吧!下面将更改的小部分源码展示解说一下。意在说明经过很少部分代码的修改就实现了“汉语编程”,这也是My-C编译器在设计之初为了后期方便的更改关键字而做的努力。

首先,我们增加关键字

在C-Minus.c中:
[img]http://ftpbbs.bccn.net/003/month_1103/20110316_763dd7f5e2d1ebee4b93zrlQ3MtN7KjD.jpg.thumb.jpg[/img]

以上就是各关键字对应的汉字字段,其中数据类型不能内嵌汉化,但我们可以在编写代码时,借助define来自定义汉化。

OK,我们还要将关键字个数更改一下
在C-Minus.h中:
[img]http://ftpbbs.bccn.net/003/month_1103/20110316_3cebe3d0743a8d3d063focYxLsMqT2O4.jpg[/img]

然后,我们需要在主代码中,做一点小改动。有多处,但我们以“if”语句做例:
在Main.c中
[img]http://ftpbbs.bccn.net/003/month_1103/20110316_b1ae459ddda85f2a33cbb5haCIBZBKIu.jpg[/img]

我们只要在if条件中加入
[img]http://ftpbbs.bccn.net/003/month_1103/20110316_3a4a8067cdffb44f0491trxFGt1CiBwW.jpg[/img]

即可。这样我们就实现了if语句的汉化字段添加,其他关键字也是如此。
    下面我们用一个实例来说明我们的支持汉语版My-C编译器是Ok的。
[img]http://ftpbbs.bccn.net/003/month_1103/20110316_195fd6429a3c776fe95eqrj0eSMrFQ7F.jpg[/img]

可以看到,我们将关键字,语句全部换成了汉语表达,很有娱乐效果。
看看运行后的截图
[img]http://ftpbbs.bccn.net/003/month_1103/20110316_e6e19d24f30eb3c4f82ajYWlLquLLs9g.jpg[/img]

可以对照代码,看虚拟机运行打印的数据和在显示器中显示的都是正确的。

实例代码:
http://bbs.bccn.net/thread-333956-1-1.html

回复列表 (共3个回复)

沙发

自顶

板凳

我帮你顶。

ps,就是那个“替换”看起来很纠结。

你这个是编译型的还是解释型的?

3 楼

相当强悍。

看样子像Java一样编译为另外的指令集。解释执行。

我来回复

您尚未登录,请登录后再回复。点此登录或注册