【语言定义】《自己动手制作编译器、链接器》中的simple c语言定义

本文介绍了作者在阅读《自己动手制作编译器、链接器》后,基于Simple C修改创建的新语言Kiana C。改造的目的是为后续开发其他编程语言奠定基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

本来想看《自制编程语言,基于C语言》,但是没有拿到手的电子书只有目录和两个章节,所以只能看《自己动手制作编译器、链接器》。这本书听说有些bug,其实无所谓了,一般的书上都找的出问题,就算是“大国重器”的教材书中也有打印错误。这本书中作者实现了一个simple c,我做这个项目是为了之后做别的语言打下基础,所以我这门在simple c上修改的语言就叫kic了!


基于simmple c 修改的语言定义

kic语言是c语言的子集(增加了elif的功能),下面就是kic语言的EBNF定义
EBNF中,{}是0次或多次,[]是0次或一次,<>是非终结符,""是终结符






目录
1.kic词法定义
1.1.关键字
1.2.标识符
1.3.整型常量
1.4.字符常量
1.5.字符串常量
1.6.运算符及分隔符
1.7.注释
2.kic语法定义
2.1.外部定义
2.1.1.函数定义
2.1.2.声明
2.1.3.类型
2.1.4.声明符
2.2.语句
2.2.1.复合语句
2.2.2.表达式语句与空语句
2.2.3.选择语句
2.2.4.循环语句
2.2.5.跳转语句
2.3.表达式
2.3.1.赋值表达式
2.3.2.是否相等表达式
2.3.3.判断表达式
2.3.4.四则运算表达式
2.3.5.一元表达式
2.3.6.后缀表达式












---------------------------------1.kic词法定义-------------------------------------------------------------------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

念心科道尊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值