自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (2)
  • 收藏
  • 关注

原创 段错误

原来以为未知的内存不可写,而读还是可以的,尽管读出的数据无效,但是今天发现free过的内存读的时候段错误,颠倒了俺的人生观.测试发现没有初始化的指针读取时也是段错误#include int main( void ){    char *p;        printf( "%s\n", p );         return 0;}r

2014-12-09 18:11:01 560

原创 一维数组当成二维使用

一维数组当成二维使用,无需开辟多余内存

2014-10-16 12:09:23 860

转载 二叉树构造与遍历

#include #include struct biTree {    char data ;    struct biTree *lchild ;    struct biTree *rchild ;        };typedef struct biTree BiTree;void CreateBiTree( BiTree **T )//构造

2014-05-09 09:00:40 596

转载 二叉树的非递归遍历 C语言版

文章作者:姜南(Slyar) 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。上周数据结构课在讲二叉树的遍历,老师只讲递归算法,没有什么技术含量,遂自己琢磨非递归算法实现...前序遍历:先访问根节点,再访问左子树,最后访问右子树。设置一个栈,出栈即为访问节点。先将根节点进栈,在栈不空时一直如下循环:出栈,访问,将其右孩子进栈,再将左孩子进栈

2014-05-09 08:17:10 1808

转载 对FrameBuffer的一夜hack。。。

大家都知道Unix/Linux系统是由命令驱动的。那么最基本的系统是命令行的(就是想DOS一样的界面)。X-Window-System是Unix/Linux上的图形系统,它是通过X-Server来控制硬件的。但有一些Linux的发行版在引导的时候就会在屏幕上出现图形,这时的图形是不可能由X来完成的,那是什么机制呢?答案是FrameBuffer。FrameBuffer不是一个图形系统,更不是窗口

2014-05-08 19:31:36 563

转载 iconv实现编码转换与中文点阵字库HZK16

嵌入式开发中中文的识别、显示一直是一个比较让人头疼的问题,这是由于嵌入式系统的精简要求所导致的。我在前一个项目中用Qt做终端的显示界面时,就被中文字符的显示搞得焦头烂额,最后还是在网上下了一个文泉驿的中文字体库才解决问题,不过并不令人满意,主要是字体库太大了,影响了性能。今天在项目中又遇到了中文字符的编码转换和显示问题,趁机学习总结一下。中文编码与点阵字库国际标准有UTF-8、UT

2014-05-08 17:22:29 2310

转载 iconv 文件编码转换

http://qq164587043.blog.51cto.com/261469/63349 linux shell 配置文件中默认的字符集编码为UTF-8 。UTF-8是unicode的一种表达方式,gb2312是和unicode都是字符的编码方式,所以说gb2312跟utf-8的概念应该不是一个层次上的。在LINUX上进行编码转换时,可以利用iconv命令实现,这是针对文件的,即将指定

2014-05-08 17:18:01 1249

转载 UCDOS点阵字库

ASC12         ASCII字库文件 12X6ASC16         ASCII字库文件 16X8ASC48         ASCII字库文件 48X24Hzk12         汉字库宋体 12X12Hzk16         汉字库宋体 16X16hzk16F        汉字库仿宋 16X16HZK24F        汉字库仿

2014-05-07 19:07:23 3556

转载 g++ *.cpp -o main -std=c++0x

这篇文章讨论了一系列所有开发者都应该学习和使用的C++11特性,在新的C++标准中,语言和标准库都加入了很多新属性,这篇文章只会介绍一些皮毛,然而,我相信有一些特征用法应该会成为C++开发者的日常用法之一。你也许已经找到很多类似介绍C++11标准特征的文章,这篇文章可以看成是那些常用特征描述的一个集合。目录:auto关键字nullptr关键字基于区间的循环Override和fina

2014-05-03 15:35:44 2948

转载 C语言字符及字符串处理函数

#include int isalnum(int c) 测试C是否为字母或数字int isalpha(int c) 测试C是否为字母int iscsym(int c) 测试C是否为字母、下划线或数字int iscsymf(int c) 测试C是否为字母、下划线int isdigit(int c) 测试C是否为十进制数字int isxdigit(int

2014-03-24 12:09:50 549

转载 解决 multiple definition of

总结了解决multiple definition of的方法:问题原因:    当多个文件包含同一个头文件时,并且你的.H里面没有加上条件编译#ifndef TEST_H#define TEST_H#endif就会独立的解释,然后生成每个文件生成独立的标示符。在编译器连接时,就会将工程中所有的符号整合在一起,由于,文件中有重名变量,于是就出现了重复定义的错误。 

2013-11-24 12:44:41 858

转载 accept: Invalid argument

今天师兄拿来一个epoll的测试程序给我看,说是有问题,运行了一下,发现了accept: Invalid argument问题。    socklen_t clilen;    struct sockaddr_in clientaddr;    connfd = accept(listenfd,(sockaddr *)&clientaddr,&clilen);问题就出在acce

2013-10-31 11:36:09 653

转载 串口编程 tcflush()函数

tcflush函数刷清(扔掉)输入缓存(终端驱动法度已接管到,但用户法度尚未读)或输出缓存(用户法度已经写,但尚未发送).  int tcflush(int filedes,int quene)  quene数该当是下列三个常数之一:    *TCIFLUSH  刷清输入队列    *TCOFLUSH  刷清输出队列    *TCIOFLUSH 刷清输入、输出队列  例如:

2013-10-27 08:07:39 2545

转载 SDL起动与退出

上一次我们建立起了SDL环境,接下来,我们谈一谈什么是SDL?如何起动和退出SDL.  Simple DirectMedia Layer库,简称SDL,它是一个跨平台的多媒体库,以用于直接控制底层的多媒体硬件的接口。这些多媒体功能包括了视频、音频、键盘和鼠标(事件)、游戏摇杆等。当然,最为重要的是提供了2D图形帧缓冲(framebuffer)的接口,以及为OpenGL与各种操作系统之间提供

2013-10-26 16:13:18 962

转载 Linux输入子系统:事件的编码 -- event-codes.txt

输入系统协议用类型types和编码codecs来表示输入设备的值并用此来通知用户空间的应用程序。这篇文档对这些类型和编码进行了说明并且指出什么时候和如何使用这些类型和编码。 一个单一的硬件事件可以产生多个输入事件,每个输入事件包含一个单一数据项的新的数据值。EV_SYN是一个特别的事件类型,它用来把同一时刻产生的多个输入数据分割为多个数据包。在下面的描述中,术语事件(event)是指一个涵

2013-10-21 10:01:30 721

转载 Linux下鼠标和键盘的模拟控制

交互系统的构建之(一)http://blog.csdn.net/zouxy09/article/details/7919618 中提到我的整个交互系统包含以下部分: TLD系统、TTS语音合成、语音识别、手势和语音控制鼠标和键盘、运行前加入手掌的检测(这样就不用鼠标画目标box了)、拳头的检测等等。 目前已完成:1、TLD系统的介绍与编译:http://blog.csd

2013-10-20 21:08:01 3280

转载 Linux下如何模拟按键输入和模拟鼠标

查看/dev/input/eventX是什么类型的事件, cat /proc/bus/input/devices  设备有着自己特殊的按键键码,我需要将一些标准的按键,比如0-9,X-Z等模拟成标准按键,比如KEY_0,KEY-Z等,所以需要用到按键模拟,具体方法就是操作/dev/input/event1文件,向它写入个input_event结构体就可以模拟按键的输入了。  l

2013-10-20 19:15:35 1919

转载 JPEG图像的解压缩操作

解压缩操作过程1.        为JPEG对象分配空间并初始化2.        指定解压缩数据源3.        获取文件信息4.        为解压缩设定参数,包括图像大小,颜色空间5.        开始解压缩6.        取出数据7.        解压缩完毕8.        释放资源为JPEG对象分配空间并初始化解压缩过程

2013-10-11 16:21:18 916

转载 X Window 程式设计入门--第六章 Inter-Client Communication

http://cnpa.yzu.edu.tw/~thinker 作者:李圭烽 (Thinker; Thinker.bbs@bbs.yzu.edu.tw) (2001-06-02 18:08:00)Index: Property & Atom     Atom     Property  Cut Buffer  Window Manager     WM_NAME  

2013-10-11 14:50:08 2560

转载 X Window 程式设计入门--第五章 Window

http://cnpa.yzu.edu.tw/~thinker 作者:李圭烽 (Thinker; Thinker.bbs@bbs.yzu.edu.tw) (2001-06-02 00:16:10)Window 作 者 : Thinker E-Mail: Thinker.bbs@bbs.yzu.edu.tw  -------------------------------------

2013-10-11 14:49:09 1821

转载 X Window 程式设计入门--第四章 Event

http://cnpa.yzu.edu.tw/~thinker 作者:李圭烽 (Thinker; Thinker.bbs@bbs.yzu.edu.tw) (2001-06-01 21:04:00)Index: Event Types and Event Masks  Events Propagation  Event Handling  Events  MapNotify

2013-10-11 14:48:14 2271

转载 X Window 程式设计入门--第三章 绘图(Graphic)

http://cnpa.yzu.edu.tw/~thinker 作者:李圭烽 (Thinker; Thinker.bbs@bbs.yzu.edu.tw) (2001-06-01 20:10:00)Index: 颜色  Graphics Context  Graphics  Image  例  -------------------------------------

2013-10-11 14:46:36 2440

转载 X Window 程式设计入门--第二章 X Programming 的第一步

http://cnpa.yzu.edu.tw/~thinker 作者:李圭烽 (Thinker; Thinker.bbs@bbs.yzu.edu.tw) (2001-06-01 19:00:01)Index: 基本步骤  建立一个 display至 X Server  取得 display的相关资料  建立视窗  和视窗管理程式(Window Manager)沟通  显

2013-10-11 14:41:59 1005

转载 X Window 程式设计入门--第一章 什麽是 X Window

http://cnpa.yzu.edu.tw/~thinker 作者:李圭烽 (Thinker; Thinker.bbs@bbs.yzu.edu.tw) (2001-06-01 18:08:00)X Client 和 X Server  X Window 为 一 Client-Server 架 构 之 GUI 。 Client 指 的 是 在 X Window 下 执 行 的 应 用 程

2013-10-11 14:39:55 952 1

转载 Xlib库基本图形编程

X窗口系统的客户/服务器模式当初开发X窗口系统的主要目的只有一个,那就是灵活性。这个灵活性的意思就是说一件东西虽然看起来是在这工作,但却实际上是工作在很远的地方。因此,较低等级的实现部分就必须提供绘制窗口,处理用户输入,画画,使用颜色等工作的工具。在这个要求下,决定了系统被分成了两部分,客户端和服务器端。客户端决定做什么,服务器端执行真正的绘图和接受用户的输入并把它发给客户端。这种模式与我

2013-10-10 20:14:07 2199 1

转载 如何发送和接收应用层数据包?

当两台电脑要通过网络)传输数据的时候,应用层必须要制定好自己的头部,最简单的头部可以是这样(以传输图片为例):起始标志0xFFEF(short类型,表明这是一个包的开头)+图片数据长度(int类型,4个字节)+图片数据(完整的图片数据)发送端和接收端的C代码大致如下:发送端代码:void sendPic(int len, char*

2013-10-07 17:41:25 1028 2

转载 Linux网络编程入门

(一)Linux网络编程--网络知识介绍Linux网络编程--网络知识介绍客户端和服务端         网络程序和普通的程序有一个最大的区别是网络程序是由两个部分组成的--客户端和服务器端. 客户端        在网络程序中,如果一个程序主动和外面的程序通信,那么我们把这个程序称为客户端程序。 比如我们使用ftp程序从另外一        个地方获取文件的时候,

2013-10-06 18:54:23 477

转载 用SDL创建一个窗口

原文来自:http://www.aaroncox.net/tutorials/2dtutorials/sdlwindow.html注意:这里我们想当然你已经知道怎么在你的IDE集成开发环境里配置好SDL 创建一个窗口 要用SDL创建一个窗口,设计到以下步骤:◆初始化SDL视频库◆创建窗口◆设置窗口标题◆关闭SDL 1.初始化SDL视频库我们用

2013-09-30 16:32:29 884

转载 Input_dev结构体分析

最近在做linux2.6的键盘驱动程序的工作,接触到了input subsystem这一概念,现把我对其中相关结构体的理解写出来。如果我的理解有错误,希望大家指正,谢谢!  1.input_dev说明:输入子系统(input subsystem)的驱动层的核心结构。  头文件:include/linux/input.h成员说明:void *private;     

2013-09-29 21:11:57 1067

转载 struct pollfd

int poll (struct pollfd *fds, size_t nfds , int timeout);struct pollfd {int fd;        /* 文件描述符 */short events; /* 等待的事件 */short revents; /* 实际发生了的事件 */};#include  int poll

2013-09-29 15:41:56 741

转载 struct stat 作用

stat,lstat,fstat1 函数都是获取文件(普通文件,目录,管道,socket,字符,块()的属性。函数原型#include int stat(const char *restrict pathname, struct stat *restrict buf);提供文件名字,获取文件对应属性。int fstat(int filedes, struct stat *buf);通过

2013-09-19 13:36:36 453

转载 Linux 虚拟鼠标,键盘

linux 有自己的 input 子系统,可以统一管理鼠标和键盘事件。基于输入子系统 实现的 uinput 可以方便的在用户空间模拟鼠标和键盘事件。当然,也可以自己造轮子, 做一个字符设备接收用户输入,根据输入,投递 input 事件。还有一种方式就是直接 往 evnent 里写入数据, 都可以达到控制鼠标键盘的功能。本篇文章就是演示直接写入 event 的方法。 

2013-09-09 07:46:33 627

转载 usb键鼠驱动分析

一、鼠标linux下的usb鼠标驱动在/drivers/hid/usbhid/usbmouse.c中实现1.加载初始化过程1.1模块入口[cpp] view plaincopymodule_init(usb_mouse_init);  1.2初始化函数[cpp] view plaincopy

2013-09-08 20:55:53 1005

转载 Linux下的鼠标操作

若干年前,我自认为很喜欢Linux;若干年后,我发现我当初是何等的天真。恩,一分钱,一分货!我坚信这一点!所以我现在坚持用MS的Vista,正版的哦!言归正传,前段时间因为工作,需要在Linux下操作鼠标,当然啦,肯定不会是在X-window下操作,那样的话也就不会有这篇文章的存在了。我要做的就是在Console下面得到鼠标的坐标。百度、谷歌都用上了,可就是找不到相关的资料。无奈之下,

2013-09-08 19:48:23 721

转载 利用BMP图片水印技术写入加密信息

文/图 [黑防vip]lwt831120本文主要和大家讨论一下BMP图片水印技术。其实BMP图片水印技术就是在BMP图片中写入编码后的数据,但写入数据后的图片在外观上和原始图片没有区别(只有文件哈希值改变),并能用特定的程序将写入的信息还原出来。 BMP图片规格    BMP图片存放时按照每个像素的RGB信息存储,每个像素的颜色用一个字节(8bit)存放。BMP图片的文件头如图1和

2013-09-07 08:24:25 1306

转载 Linux下利用fb驱动截屏

最近要写有关于QT的文档了,需要大量截图,由于目前QT是在2410开发平台上跑,在PC下懒得再编译QT的lib出来,所以如何将2410开发板上的LCD的图像截下来成了一个不大不小的问题。反正以后可能会经常用到,索性写一个可以在2410开发板,Linxu平台下,截取LCD屏幕内容的小程序,呵呵~~ 程 序主要是利用/dev/fb/0这个设备节点。/dev/fb/0代表了LCD

2013-09-06 13:25:27 1549

转载 jpeg压缩解压缩简介

本文只介绍jpeg压缩的相关内容,刚开始我贪图省事,采用微软 的GDI Plus提供的功能,很是方便,先获取jpg图像的编码,然后根据图像的位图数据创建一个Bitmap类的对象,再保存图像为jpg格式就行了。但是我对GDI+还是很信任,总感觉不踏实(没有理由的),我们的系统一旦安装就要长期运行,我就是担心长期运行一段时间后GDI+会出问题,结果也证实了我的担心,我们实际使用的10套系统中有一套,连

2013-09-06 12:19:23 1279

转载 mini2440驱动分析之LCD

[日期:2011-10-04]来源:Linux社区  作者:yaozhenguo2006 四. frambuffer驱动模型fb_ops各函数的实现  由s3c2410fb_ops结构可以看出,mini2440lcd驱动主要实现了下面几个函数:s3c2410fb_check_vars3c2410fb_set_pars3c241

2013-09-05 20:42:04 689

转载 mini2440驱动分析之LCD

[日期:2011-10-04] 来源:Linux社区  作者:yaozhenguo2006二. 模块初始化  1.s3c2410fb.c是内核的一个模块,在模块初始化函数中只是简单的调用了platform_driver_register把自己注册成为platform驱动。初始化函数如下:int __init s3c2410fb_init(void)  {

2013-09-05 20:40:16 612

转载 mini2440驱动分析之LCD

[日期:2011-10-04]来源:Linux社区  作者:yaozhenguo2006[字体:大 中 小]mini2440集成了lcd控制器的接口,板子上接的lcd硬件是统宝240*320,TFT型lcd。lcd驱动对应的文件为s3c2410fb.c。要读懂这个驱动必须了解linux platform子系统的知识。因为这个驱动是以platfor

2013-09-05 20:37:27 548

c语言抓包并分析

纯c语言实现抓包,分析包的来源IP,硬件地址和目的地IP硬件地址,以及以太网类型,对原始套接字学习有所帮助

2015-01-21

SDL图片浏览器

使用SDL实现图片浏览器,可以移植到开发板和windows,但需要重新编译。包里面有相应的图片

2014-05-17

空空如也

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

TA关注的人

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