自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(26)
  • 收藏
  • 关注

原创 龙书_语法分析_FIRST集_笔记

先附上原文计算各个文法符号X的FIRST(X)时, 不断应用下列规则, 直到再没有新的终结符号或ϵ\epsilonϵ可以被加入到任何FIRST集合中为止.如果X是一个终结符号,那么FIRST(X)=X.如果X是一个非终结符号, 且X→\rightarrow→Y1Y_1Y1​Y2Y_2Y2​…YkY_kYk​是一个产生式, 其中k≥1k\geq1k≥1, 那么如果对于某个i, a在FIRST(Yi)(Y_i)(Yi​)中且ϵ\epsilonϵ在所有的FIRST(Y1Y_1Y1​), FIRST(Y2

2020-05-25 22:45:08 263

原创 MessageQueue native pollonce的作用

转载自https://stackoverflow.com/questions/38818642/android-what-is-message-queue-native-poll-once-in-android的解答,我觉得说的非常清楚了ThenativePollOncemethod is used to "wait" till the nextMessagebecomes ...

2020-04-16 22:20:57 1237

原创 LR语法分析技术学习(未完待续)

句柄:“句柄”是和其某个产生体匹配的子串,对它的归纳代表了相应的最右推导中的一个反向步骤。如果有S=>aAw=>aBw那么A->B是aBw的一个句柄。增广文法:G是以S为开始符号的文法,则G的曾广文法是G中加上S’->S而得到的文法。项集的闭包: I是文法G的一个项集,那么CLOSURE(I)的构造方式为:将I中的各项加入到CLOSURE(I)中。如果A-&...

2020-04-06 23:23:38 282

原创 Linux ptrace函数学习

因为要学习调试器是如何工作的,结果发现里面用到了ptrace这个函数,所以先要搞明白ptrace的作用和用法。国外有篇文章介绍的比较好Playing with ptrace, Part I ,这里记录一下学到的主要内容。那么先看最简单的一个的使用ptrace的例子#include <sys/ptrace.h>#include <sys/types.h>#include...

2020-04-04 23:47:11 351 1

原创 《编译原理》 第二章 笔记

概念上下文无关文法语法制导翻译词法单元抽象语法树三地址中间代码ε 表示空字符串文法二义性:多棵语法分析树可以生成一个给定的终结符号串解释上下文无关文法的构成:终结符号集合非终结符号集合产生式集合开始符号推导:从开始符号出发,不断将非终结符号替换为某个产生式的体语法分析树:A -> XYZ二义性二义性问题举例对于文法:string -&g...

2020-03-08 10:46:02 358

原创 龙书读书笔记--第 1 章 语言处理系统

概念罗列:语言处理程序编译器 将源代码翻译成目标程序解释器 根据源代码来执行相应的操作编译器的结构前端:分析部分,将源代码进行拆分,并添加语法结构,生成中间表示和符号表。并将中间表示和符号表传递给后端。后端:根据前端输入构建目标程序。编译过程的步骤:词法分析: 将源代码字符流组织成词素的序列,并以词法单元的形式输出。词法单元(token): 通常形式:<抽象符号,...

2020-03-05 09:56:53 222

原创 C++中左值和右值的理解

从形式表现上:int a = 10;a 就是左值,10就是右值。int *pa = &a;pa是左值,&a是右值。但是:int b = a;这里b是左值,a本来是左值,但是被转化成为右值来用。从概念上讲:左值表示的是对象在内存中的地址。右值表示的是对象的内容或者值。在实践中,以下情况是左值(参考https://en.cppre...

2020-01-30 00:04:43 442 1

原创 C++ Primer 学习笔记(持续完善中)

1 左值和右值: 左值:具名,可取地址并访问,可以对其进行赋值 右值:不具名,不可取地址,不可对其进行赋值2 ++i和i++的区别 ++i直接在变量上自增 i++先拷贝一份变量,自增后重新赋值给原变量3 作用域覆盖,内外作用域嵌套4 引用和指针的底层实现是一样的,引用绑定对象后不能改变,指针可以改变5 分离式编译的概念,将代码分割到多个程...

2020-01-17 15:22:45 150

原创 自己用C++实现的vector

学习《数据结构与算法分析–C++描述》拿来练手的作业要点:一、熟悉vector的基本实现方式:数组加内存扩展二、几个需要注意的点:1、五大函数的实现析构函数拷贝构造函数移动构造函数拷贝赋值移动赋值2、std::move和std::swap的用法3、iterator和const_iterator的作用和实现方式#include <algorithm>#inc...

2020-01-14 17:47:03 486

原创 汇编中的栈帧理解

一、基本概念什么是栈帧?根据《深入理解计算机系统》3.7.1节的解释:C语言过程调用(其实就是函数调用)机制的一个关键特性在于使用了栈数据结构提供的后进先出的内存管理原则。(中间省略)。。。当x86-64过程调用需要的存储空间超过寄存器能够存放的大小时,就会在栈上分配空间,这个部分就称为栈帧。那么,根据这段描述可以比较直观的认为:C语言函数调用的内存申请和释放是通过对栈进行操作来完成的,一...

2020-01-08 15:16:11 3122

原创 人脸识别库Dlib介绍

Dlib是一个包含C++和python两种语言实现的,包含机器学习和其他工具的软件开发包(虽然它的官网描述只有C++),官方主页为http://dlib.net/。它能提供的功能有:Machine Learning AlgorithmsNumerical AlgorithmsGraphical Model Inference AlgorithmsImage Processin...

2019-12-31 23:25:09 1670

原创 将博客搬至CSDN

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2019-12-21 22:29:00 166

原创 忽视数值类型的长度范围而造成的问题代码

在日常编程中,我们可能经常简单的处理不同数值类型,而忽视其能表示的长度范围,比如int和long,我们可能经常将这两种类型混用,然后遇到编译报错,就用强制转换来应付。但通过我最近遇到的两个代码所暴露出的问题,发现这种做法是不严谨的。首先看代码1(java代码),某广泛使用的即时通讯SDK所声明的接口 // 返回第i个元素 public TIMElem getElement(in...

2019-10-23 23:34:00 141

原创 一个ViewPager使用多个Adapter时遇到的一个问题

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2018-11-27 22:25:00 107

原创 编译报错问题修复

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2018-11-07 17:01:00 144

原创 Android TextView获取ClickSpan点击位置的方法

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2018-04-25 22:12:00 558

原创 How Webkit works笔记

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2018-04-15 01:21:00 99

原创 OpenRA寻路过程学习

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2017-10-07 01:19:00 427

原创 领域驱动设计学习的一些总结(阅读dddquickly有感)

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2016-08-07 14:57:00 128

原创 关于控件事件监听的一些思考

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2016-04-07 23:40:00 84

原创 有关ListView的思考

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2016-04-07 23:30:00 70

原创 Mac 环境下 Jenkins+Gradle 配制android 持续构建总结

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2015-09-27 23:33:00 100

原创 Activity 通过 Fragment保存大块数据的一种方法。摘自android开发官网

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2015-09-16 01:06:00 80

原创 收藏按钮制作方法

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2015-08-12 15:19:00 255

原创 Android 使用Universal Image Loader绘制带圆角的图片(一)

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2015-07-20 01:08:00 76

原创 LoginActivity 自动化测试

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> ...

2015-03-05 15:11:00 138

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除