利用Lex进行词法分析

写在前面

目前开展编译原理这门课程,许多同学说实话学不到什么东西,知识一昧地做题,我个人是不建议的。当我看到课本上有一页是来介绍利用Lex和Yacc做词法分析和语法分析的时候,我觉得可以试一试,没想到Lex使用起来还有些难度,大概花费了我一周的时间才大部分可以看懂。下面将介绍利用Lex(Flex)进行词法分析的流程。

学习流程

  1. 首先需要安装Lex

    推荐安装的博客:手把手教程-lex与yacc/flex与bison入门(一)(使用windows环境)D-Cierra, 个人觉得这篇文章中的环境配置部分写的不错,值得学习。明确以下几点。

    1. flex是lex的替代品,也大致可以说就是一样的东西。
    2. 配置环境变量的目的就是方便在任何的命令框中调用flex和bison,如果对于windows命令不是很熟悉的同学推荐将其放在环境变量中。
    3. 这里最好安装的没有中文路径的目录下,默认的目录是有些问题的。比如program file (x86)这个目录我的计算机上是识别不了的,推荐直接安装的C盘根目录下。
    4. 最后的测试可以不使用管理员身份打开,我测试的时候是没有问题的。
  2. 认识Lex

    这里推荐的博客:Lex使用指南 火雨_Nick,写的比较好,但是时间较长了,这都2023年了

    关于《利用Lex进行词法分析》相关推荐

    1. 学计算机是不是必须要买电脑,上大学了,你必须买一部电脑吗?

      有一位今年的大一新生在网上问:上大学了,必须买电脑吗? 对于这个问题,大家的看法没有大的分歧,我们总结整理一下,大致观点如下: 一,根据学生学习的需要情况. 在大学里,有些专业学习时必须用到电脑,类似 ...

    2. 菜鸟学编程,用x86二手本学习嵌入式编程(硬件编程)

      最近一直忙着上课,一直忙着写论文,一直忙着准备考试,但是脑子没有停止思考. 下学是结合个人的学习经历,给希望学习软件的菜鸟一点点帮助. 1:菜鸟也想学编程 大部分同学从大学开始接触软件编程,但其实有一 ...

    3. 小孩多大适合学编程机器人

      小孩多大适合学编程机器人?小孩的学习一直以来都是家长们非常关心和重视的一件事情.很多的家长在培养孩子的学习的时候,在选择学习课程的时候,可以说是非常的用心的.就拿现在很多的家长想要孩子去学习机器人编程 ...

    4. 关于《学编程,还有必要上大学吗? 》

      这两天登录CSDN,下面的广告弹出链接写着<学编程,还有必要上大学吗?>原来是篇针对<收回你的偏见,软件培训机构更能出人才>和<90后高中生学编程月薪过万,刺痛了谁?&g ...

    5. 电路板必须用c语言编程吗,上大学才知道绿油油的板子叫PCB,如何成为一名电子工程师...

      原标题:上大学才知道绿油油的板子叫PCB,如何成为一名电子工程师 本文为十周年征文来稿,活动还在就行中欢迎烧友们拉到文章底部了解参加 对活动有疑问欢迎联系小助手(微信:XM1007721171) 我是 ...

    6. @大学生,送给步入大学生活的你,高速学编程。

      大学生怎样学习编程,学哪个编程语言好? 上大学后学哪门编程语言好?大学生学哪个编程语言好就业?学哪个编程语言工资高?新手如何自学编程?哪个编程语言开发的软件多?大公司都招聘哪些编程语言人才? 相信很多 ...

    7. 大学java怎么算学得好_为什么现在大学里很多计算机系的大学生,学编程的时候总学不好...

      小编发现如今在大学校园里,总是会出现一种现象,就是现在大学里很多计算机系的大学生,学编程的时候总学不好,这到底是为什么呢?因为看不懂?因为不认真?相信很多同学也会感到疑惑,那小编就一起来分析一下吧,同 ...

    8. 大学如何开始学编程?

      大学如何开始学编程? 作为编程初学者每个人一开始都很迷茫不知如何学习,学习也没动力,其实大家都是一样的,但这并不意味着你会成为一个糟糕的 程序猿(媛).学习编程关键是要找到一种合适的语言,坚持学习,学 ...

    9. 3.4 学编程不拘于语言,学语言不限于平台——《逆袭大学》连载

      返回到[全文目录] 目录 3.4 学编程不拘于语言,学语言不限于平台 编程语言 软件和硬件--计算机要作为一个整体看待 语言的江湖 语言不是回事 多平台上的精彩 3.4 学编程不拘于语言,学语言不限于 ...

    10. 学编程会拉低数学成绩,巴黎大学跟踪1500个小学生得出结论

      "怎么培养数学逻辑思维?来点编程试试?" 大概这是很多人的既有认知,毕竟感觉程序员们的数学都挺好的. 巴特,反转来了. 来自巴黎大学的研究人员发现,小学生改用编程课学数学后,对成绩 ...

    最新文章

    1. ML之分类预测之ElasticNet:利用ElasticNet回归对二分类数据集构建二分类器(DIY交叉验证+分类的两种度量PK)
    2. SDUT_2012省赛热身赛1
    3. IT培训分享:学什么语言不愁找工作?
    4. What are definitions of ​Model, Inference and Algorithm and its associations ?
    5. [渝粤教育] 西南科技大学 土木工程施工 在线考试复习资料(1)
    6. Python Day03
    7. 探探被安卓市场下架 官方回应:深入开展整改
    8. BigDecimal除法,并保留小数后两位
    9. 享受梦幻技术盛宴,相约 Unite 2020
    10. typescript之prototype
    11. iOS -- MBProgressHUB
    12. 《pro Spring》学习笔记之Spring HTTP 远程方法调用
    13. python学习一:基本数据类型
    14. 树莓派下pyaudio安装与声音监控应用
    15. AlphaGo算法原理浅析
    16. 前端视频插件Video.js的基本使用
    17. 通用对话框Dialog
    18. idea更改页面背景颜色设置为护眼颜色
    19. MAC出现:未能正确打开SANGFOR SSL Virtual网卡,暂时不能提供SSL CS服务,请联系管理员
    20. Ubuntu系统报错

    热门文章

    1. CSS 背景渐变、背景透明不改变文字
    2. 键盘输入圆的半径,计算并输出圆的周长和面积
    3. 用Laravel Sms实现 laravel短信验证码的发送
    4. 如何提取html里面的文件,我如何从HTML文件中提取所需的数据?
    5. 重装Deepin 15.11 unstable版本更新到stable版本如何保留home分区数据
    6. 简易新年倒计时的js部分
    7. 论文笔记——Using Progressive Context Encoders for Anomaly Detection in Digital Pathology Images
    8. HTML简单网页制作,好玩又有趣
    9. 《复仇者联盟3》 背后的渲染黑科技你了解多少
    10. 悲伤的开始 (2019-08-26 13:27:58)