记住 再烦,也别忘微笑;再急,也要注意语气; 再苦,也别忘坚持;再累,也要爱自己。 低调做人,你会一次比一次 稳健;高调做事,你会一次比一次优秀。 成功的时候不要忘记过去;失败的时候不要忘记还有未来。 有望得到的要努力,无望得到的不介意,则无论输赢姿态都会好看。
2022-06-20 14:40:55 231KB 语法 编译器
1
非常全面的课程设计报告 包含有源代码及其可运行的程序 大三的时候做的期末的实验报告
1
使用C++语言编写语法编译器——寻找所给.CPP文件的语法错误之处,并生成.TXT文档进行错误记录。主文件名为:grammcheck.cpp 被检测的文件名:tobecheck.cpp 环境:VS2019
2021-05-23 16:01:38 16.38MB 语法编译器 c++
1
TinyCompiler 序言 项目概述 本项目是基于flex,bison和LLVM,使用c ++ 11实现的类C语法编译器,使用flexbindingyacc对源代码进行词法,语法分析;在语法分析阶段生成整个源代码相应的抽象语法树后,根据LLVM IR(中间表示)模块中定义的中间代码语法输出与LLVM中间语言语法,机器无关的中间代码;最后,本项目通过调用LLVM后端模块的接口,根据本地指令集与操作系统架构,将中间代码编译成二进制目标代码。编译生成的目标代码之后可直接编译生成初始化文件,或与其他目标代码链接生成替代文件。 本项目解析的语法与是C语言的一个子集,但部分语法存在区别,这些将在最后的测试用例中具体说明。目前已支持的数据类型包括: 虚空 整型 浮动 双 烧焦 串 布尔 自定义结构体 样本(包括多维样本) 支持的主要语法包括: 变量的声明,初始化(包括一维细分初始化,多维序列暂不支持初始化,只能逐个元素赋值使用) 函数声明,函数调用(传递参数类型可以是任意已支持类型) 外部函数声明和调用 控制流语句if-else,for,while和任意层级的嵌套使用 单行注释(#) 二元运算
2021-05-13 00:02:15 2.01MB bison flex compiler llvm
1