软件构造实验二-拷贝一个c文件 将其中的关键字int替换成float
1,新建 Parser Generator 点击project --> new

2,填写工程名字 随意取一个名字 点击OK
3,点击Project选项下的 parserwizard 分析器向导选项

这里需要填写 工程存放的目录,以及工程名字。
4,选择配置 这里选择 只lex文件,并创建main程序,单线程模式
点下一步

5,点击完成

6,程序会生成 mylexer.l 的lex空文件,我们需要建立一个简单的lex文件已作说明
将下列程序源代码覆盖生成的lex代码
%{
%}
%%
//表示如果是在双引号(")中(即为字符串),则照常打印,编译时请删除此注释
\".*\" {printf("%s",yytext);}
[^ \t\n]+ {printf("%s",yytext);}
//表示如果遇到float,且附加模式是后面跟有空白符,则将int替换为float,编译时请删除此注释
int/[ \t]+ {printf("float");}
\n|. {printf("%s",yytext);}
%%
#pragma comment(lib,"y1.txt")
int main(void)
{
yyin=stdin;
return yylex();
}
7,编译 lex文件 点击 工具栏中的 Build选项,中间那个图标

8,编译完成 应该是0个错误,0个警告

9,配置VC 6.0
启动 vc 6.0 建立一个空的控制台工程


点击 Finish
10,添加第8步编译好的C h文件
打开 Parser Generator 所建工程目录,应当有下列文件

注:这里有因为建立了两次 两个工程,实际上只有一个
11,添加文件

在VC 6.0中将 source 和 Header 相应文件夹处添加好 相应的源码和头文件

12,配置VC环境
现在要设置环境变量了,首先要导入Parser Generator的库文件和源文件。在工具->选项里要设置这些环境变量。



设置完这些文件后,还要在工程->设置里添加yl.lib库

在预编译选项下添加 YYDEBUG

然后点击 OK 完成
13,编译生成的C程序 一般不会有错误
软件构造实验二-拷贝一个c文件 将其中的关键字int替换成float的更多相关文章
- sed 's/AA/BB/' file # 将文件中的AA替换成BB,只替换一行中第一次出现的AA,替换后的结果输出到屏幕 sed 's/AA/BB/g' file # 将文件中的所有AA都替换成BB,替换后的结果输出到屏幕
生信人的自我修养:Linux命令速查手册 简佐义 四川大学 生物信息学硕士 科学求真 赢 10 万奖金 · 院士面对面 209 人赞同了该文章 许多人做生物信息学,要么不重视Linux,要么不知道 ...
- 【C语言】字符串替换空格:实现一个函数,把字符串里的空格替换成“%20”
//字符串替换空格:实现一个函数,把字符串里的空格替换成"%20" #include <stdio.h> #include <assert.h> void ...
- java实验二——输出一个指定整数的所有质因数
import java.util.Scanner; public class 实验二 { /** * @param args */ public static void main(String[] a ...
- 实验二——Linux系统简单文件操作命令
项目 内容 这个作业属于那个课程 这里是链接 作业要求在哪里 这里是链接 学号-姓名 17041506-张政 作业学习目标 学习在Linux系统终端下进行命令行操作,掌握常用命令行操作并能通过命令行操 ...
- 实验二 Linux系统简单文件操作命令
项目 内容 这个作业属于哪个课程 班级课程的主页链接 这个作业的要求在哪里 作业要求链接接地址 学号-姓名 17041428-朱槐健 作业学习目标 1.学习在Linux系统终端下进行命令行操作 2.掌 ...
- 软件构造实验-百度图像识别api
识别结果: 识别结果:
- 软件构造实验-Guns
根据guns开发示例,搭建汽车信息管理系统
- 软件构造实验-JFinal
导入JFinal的demo 可以增删改查 根据demo以及自己的理解,使用JFinal实现学生信息管理系统.
- 符号替换问题:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
public class Solution { public String replaceSpace(StringBuffer str) { String str1=str.toString(); c ...
随机推荐
- (十七)Activitivi5之组任务分配
一.需求分析 我们在实际业务开发过程中,某一个审批任务节点可以分配一个角色(或者叫做组),然后属于这个角色的任何一个用户都可以去完成这个任务节点的审批 二.案例 2.1 方式一:直接流程图配置中写死 ...
- (八)springmvc之静态资源的访问。
一.直接调用 行内样式或者js直接调用没有问题. <span style="font-size:26px;color: Blue">行内样式</span> ...
- 经典SQL数据库面试题以及答案—Oracle版本-SQL全部在plsql开发编写-欢迎提问
Student(Sno,Sname,Sage,Ssex) 学生表 S1:学号:Sname:学生姓名:Sage:学生年龄:Ssex:学生性别 Course(Cno,Cname,T1) 课程表 C1,课程 ...
- 修改ubuntu设备名
修改ubuntu设备名 执行如下命令: sudo sed -i 's/当前设备名/新设备名/' /etc/hostname sudo sed -i 's/当前设备名/新设备名/' /etc/h ...
- 二、eureka服务端注册服务
所有文章 https://www.cnblogs.com/lay2017/p/11908715.html 正文 入口 上文我们说到,eureka是使用jersey来对外提供restful风格的rpc调 ...
- MMU简介
MMU(Memory Management Unit)内存管理单元 负责虚拟地址到物理地址的映射,并提供硬件机制的内存访问权限检查.内存访问权限的检查可以保护每个进程所用的内存不会被其他进程所破坏 地 ...
- MySQL之字符函数
MySql中提供一些函数对我们的开发有很多的帮助,下面就把MysQL提供的一些常用函数整理下,首先是字符处理函数: 1.CONCAT() 用法:字符串链接函数,将字符串字段连结在一块 举例: sele ...
- Django drf:认证及组件、token、局部钩子源码分析
一.drf认证功能 二.token讲解 三.局部钩子源码分析 一.drf认证功能 1.认证简介: 只有认证通过的用户才能访问指定的url地址,比如:查询课程信息,需要登录之后才能查看,没有登录则不能查 ...
- <a>标签的target 属性 全局作用
局部(或全局)设置<a>标签的target属性 对于超链接<a>标签,target属性的设置是比较关键的,在不同的用户场景下选用适合的新页面载入方式,可以大 ...
- PAT Basic 1053 住房空置率 (20 分)
在不打扰居民的前提下,统计住房空置率的一种方法是根据每户用电量的连续变化规律进行判断.判断方法如下: 在观察期内,若存在超过一半的日子用电量低于某给定的阈值 e,则该住房为“可能空置”: 若观察期超过 ...