《ANTLR4权威指南》epub下载在线阅读,求百度网盘云资源

Python09

《ANTLR4权威指南》epub下载在线阅读,求百度网盘云资源,第1张

《ANTLR 4权威指南》(Terence Parr)电子书网盘下载免费在线阅读

资源链接:

链接:https://pan.baidu.com/s/16kme4PB_C4WEEIomuJDUTQ

提取码:4mlr

书名:ANTLR 4权威指南

作者:Terence Parr

译者:张博

豆瓣评分:9.7

出版社:机械工业出版社

出版年份:2017-5-1

页数:262

内容简介:ANTLR是一款强大的语法分析器生成工具,可用于读取、处理、执行和翻译结构化的文本或二进制文件。它被广泛应用于学术领域和工业生产实践,是众多语言、工具和框架的基石。Twitter搜索使用ANTLR进行语法分析,每天处理超过20亿次查询;Hadoop生态系统中的Hive、Pig、数据仓库和分析系统所使用的语言都用到了ANTLR;Lex Machina将ANTLR用于分析法律文本;Oracle公司在SQL开发者IDE和迁移工具中使用了ANTLR;NetBeans公司的IDE使用ANTLR来解析C++;Hibernate对象-关系映射框架(ORM)使用ANTLR来处理HQL语言。

除了这些鼎鼎大名的项目之外,还可以利用ANTLR构建各种各样的实用工具,如配置文件读取器、遗留代码转换器、维基文本渲染器,以及JSON解析器。我编写了一些工具,用于创建数据库的对象-关系映射、描述三维可视化以及在Java源代码中插入性能监控代码。我甚至为一次演讲编写了一个简单的DNA模式匹配程序。

一门语言的正式描述称为语法(grammar),ANTLR能够为该语言生成一个语法分析器,并自动建立语法分析树——一种描述语法与输入文本匹配关系的数据结构。ANTLR也能够自动生成树的遍历器,这样你就可以访问树中的节点,执行自定义的业务逻辑代码。

本书既是ANTLR 4的参考手册,也是解决语言识别问题的指南。你会学到如下知识:

识别语言样例和参考手册中的语法模式,从而编写自定义的语法。

循序渐进地为从简单的JSON到复杂的R语言编写语法。同时还能学会解决XML和Python中棘手的识别问题。

基于语法,通过遍历自动生成的语法分析树,实现自己的语言类应用程序。

在特定的应用领域中,自定义识别过程的错误处理机制和错误报告机制。

通过在语法中嵌入Java动作(action),对语法分析过程进行完全的掌控。

本书并非教科书,所有的讨论都是基于实例的,旨在令你巩固所学的知识,并提供语言类应用程序的基本范例。

vb6.0: min:0Max:63534

获取麦克风音量大小值

mciSendString "status movie volume", V, 0, 0 '(move 你自己定义的什么就改为什么) 返回的V就是音量的大小

当前播放音乐的音量,即喇叭的音量我是用vb2005做的,供参考

Private Declare Function waveOutSetVolume Lib "winmm.dll" (ByVal uDeviceID As Integer, ByVal dwVolume As Integer) As Integer

Private Declare Function waveOutGetVolume Lib "winmm.dll" (ByVal uDeviceID As Integer, ByRef lpdwVolume As Integer) As Integer

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

mciSendString("close song", 0, 0, 0)

FileName = "D:\LoopyMusic.wav"

mciSendString("open " &FileName &" alias song", 0, 0, 0)

mciSendString("play song", 0, 0, 0)

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Call Setlr(2000, 2000)

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim ml, mr As Integer

Getlr(ml, mr)

Msgbox( "左声道" &ml &"--右声道" &mr)

End Sub

Public Function Setlr(ByVal Lvolume As Integer, ByVal Rvolume As Integer) As Integer

Dim mlr As String

mlr = "&h" &vb.Right("0000" &Hex(Lvolume), 4) &vb.Right("0000" &Hex(Rvolume), 4)

waveOutSetVolume(Wave_mapper, CInt(mlr))

End Function

Public Function Getlr(ByRef l As Integer, ByRef r As Integer) As Integer

Dim lr As Integer

waveOutGetVolume(Wave_mapper, lr)

l = CInt("&h" &vb.Left(Hex(lr), 4))

r = CInt("&h" &vb.Right(Hex(lr), 4))

End Function