面目全非,胸有丘壑

人若无名,便可专心练剑

REST实战——调用百度语音的云服务

RESTful REST(REpresentation State Transfer)描述了一个架构样式的网络系统,比如说web应用程序。它首次出现在2000年Roy Thomas Fielding的博士论文中,他是 HTTP 规范的主要编写者之一。REST指的是一组架构约束条件和原则。满足这些约...

2016-04-19 13:31:34

阅读数:7427

评论数:0

Intel HEX文件解析

最近有一个需求就是为Arduino开发板做一个基于蓝牙的无线烧录程序。目前的Arduino程序都是通过USB线连接到电脑的主机上,实际的传输过程是基于USB协议的,这个过程还是比较麻烦的。因为每次的编译完以后都需要通过一个USB线来完成传输烧录的工作,这个还是很麻烦的。 原理解读 在Arduin...

2016-04-05 17:22:50

阅读数:6053

评论数:4

利用lex和yacc做词法、语法分析

最近在一直做一个东西。设计一种脚本语言,再写一个翻译器,将这种脚本语言翻译成avr-gcc可以执行的C语言程序,再将得到的C语言程序利用avr-gcc编译器编译成Intel的hex文件格式,再写一个类似bootloader的东西,将这个hex文件以无线的方式加载到内存执行。这个类似bootload...

2016-03-25 21:48:27

阅读数:2512

评论数:0

Arduino自定义通信协议解析

上一篇文章给出了通信协议的设计。通信协议的格式如下: 协议首部 指令长度 控制指令 校验和 “控制指令”设计成如下格式: 设备类型 设备号 端口号 比如说上位机发送如下的格式的数据:AA0305020106,意思就是协议的首部为AA,...

2016-03-04 15:28:35

阅读数:5088

评论数:7

Arduino通信协议设计

最近在一直在研究Arduino硬件平台的东西,先从做一个简单的东西入手,比如说,我通过Android端向Arduino硬件发送指令,控制电机的正转、反转。其中一个必不可少的问题就是这两个端设备之间的通信问题。它们之间的通信可以通过蓝牙模块来完成,此外,还需要自己设计通信协议。 分析 从最简单的模...

2016-03-02 18:36:40

阅读数:2192

评论数:0

C++虚函数的底层实现原理

在C++中,多态是利用虚函数来实现的。比如说,有如下代码: #include using namespace std; class Animal { public: void Cry() { cout << "Animal cry!" << ...

2016-01-11 18:01:58

阅读数:2571

评论数:7

深拷贝和浅拷贝

C++中一个非常经典的问题就是深拷贝和浅拷贝的问题,这属于拷贝构造函数中的内容。浅拷贝时,拷贝类的对象时,将拷贝其指针成员,但是没有复制指针指向的缓冲区,这样做的结果就是,两个对象指向同一块动态分配的内存。浅拷贝会威胁程序的稳定性。这样说起来可能不太好理解,下面给出一个很好的例子,自定义一个类似s...

2015-12-30 17:10:42

阅读数:565

评论数:0

基于OK6410嵌入式WinCE 6.0的“街霸”游戏的设计与实现

很久没写博客了。这几天在做嵌入式的课程设计,忙活了将近两周。实验平台的开发板子用的是OK6410,操作系统是WindowsCE,微软旗下一个嵌入式方向的产品。本打算做一个三维的游戏,结果学了一段时间DirectX的东西。悲哀的是WinCE目前还不支持DirectX的API。囧,只好做一个二维的游戏...

2015-12-21 23:21:59

阅读数:1021

评论数:0

strlen、strcpy、strcat等字符串处理函数的实现

最近参加不少小公司的笔试,都是关于C++开发工程师的岗位,考察的题目比较基础。不少公司都考察了关于字符处理函数的实现,这些看起来很简单,其实需要注意的地方还是很多的。这里给出strlen、strcpy、strcat等函数的实现,以及指出需要注意的地方。 strlen求字符串的实际长度,其函数的原...

2015-10-17 17:10:20

阅读数:872

评论数:0

C++ String类的构造函数、拷贝构造函数的实现

构造函数、析构函数与赋值函数是每个类最基本的函数,在一些公司的面试中也会经常问到这方面的问题。每个类只有一个析构函数和一个赋值函数,但可以有多个构造函数(包含一个拷贝构造函数,其它的称为普通构造函数)。对于任意一个类A,如果不手动编写上述函数,C++编译器将自动为类A生成四个缺省的函数:    A...

2015-10-10 10:51:24

阅读数:4844

评论数:0

内存映射文件

在做科研,实现一些大数据的算法的时候,经常要调用一些文件的I/O函数,在数据量很大的时候,除了设计的算法和数据结构的耗时以外,其实主要的耗时还是文件的I/O。因为一般常规的方法就是先读出磁盘文件的内容到内存中,然后修改,最后写回到磁盘上。读磁盘文件是要经过一次系统调用,先将文件的内容从磁盘拷贝到内...

2015-08-28 16:26:19

阅读数:93329

评论数:1

Web服务器开发

服务器是C/S模式的核心,最近在看网络编程的东西,参考了一些书籍,做了一个Web服务器。整体的实现分为四个部分:界面控制、服务流程的实现、HTTP协议的实现、协议的辅助实现部分。界面控制部分主窗体设计比较简陋, Web服务器的运行离不开HTTP协议,定义一个类CHttpProtocol,用来...

2015-07-10 20:38:07

阅读数:1105

评论数:0

基于MFC的FTP客户端

最近在看关于C++ FTP编程的东西,写了一个Demo版本的FTP客户端。同样,在开发之前,先弄清原理性的东西。呵呵相关知识FTP(File Transfer Protocol,文件传输协议)工作在TCP/IP协议的应用层,在传输层使用的是TCP,用于在网络上控制文件的双向传输。百度百科上有对其...

2015-06-17 22:40:21

阅读数:6314

评论数:0

基于MFC的网络浏览器Demo

最近在接触C++的HTTP编程,做了一个网络浏览器,仅仅是一个demo版本的,呵呵。下面先介绍一下HTTP的工作原理HTTP在介绍HTTP原理之前,不得不提及一位有关Internet的大师级人物,英国计算机科学家蒂姆·伯纳斯·李(Tim Berners-Lee),他发明了web浏览器,使得Inte...

2015-06-14 00:18:39

阅读数:7137

评论数:3

MFC中关于m_pMainWnd = &dlg;处报错的解决方案,针对XX处未处理的异常:0xC0000005:写入位置0x00000020时发生访问冲突

在新建一个MFC基于对话框的工程的时候,一般在工程的源文件下会生成如下代码 CFaceDetectDlg dlg; m_pMainWnd = &dlg; 稍微有点MFC开发经验的都知道这两行代码是为了给m_pMainWnd【该指针为app类里面的关键指针】赋值,保存主窗口指针。 当...

2015-05-13 13:27:02

阅读数:1752

评论数:0

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