自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(94)
  • 收藏
  • 关注

转载 ButterKnife--View注入框架

俗话说:“不会偷懒的程序员不是好的程序员!”。作为一名Android开发,是不是经常厌烦了大量的findViewById以及setOnClickListener代码,而ButterKnife是一个专注于Android系统的View注入框架,让你从此从这些烦人臃肿的代码中解脱出来。先来看一段代码示例说明下ButterKnife是如何简化代码的:注意:如果你是使用的Eclipse引用该libr

2016-03-12 12:02:32 454

转载 多线程编程之一——问题提出 zz

多线程编程之一——问题提出 作者:韩耀旭下载源代码一、问题的提出编写一个耗时的单线程程序:  新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下: void CS

2010-04-28 08:25:00 496

转载 全面介绍Windows内存管理机制及C++内存分配实例(一):进程空间 zz

 本文背景:在编程中,很多Windows或C++的内存函数不知道有什么区别,更别谈有效使用;根本的原因是,没有清楚的理解操作系统的内存管理机制,本文企图通过简单的总结描述,结合实例来阐明这个机制。本文目的:对Windows内存管理机制了解清楚,有效的利用C++内存函数管理和使用内存。本文内容:本文一共有六节,由于篇幅较多,故按节发表。其他章节请看本人博客的Windows内存管理

2009-11-19 11:32:00 775

转载 智能指针

 Boost中提供的5类智能指针。分别是:l        scoped_ptr           独占的指针l        scoped_array       独占的数组l        shared_ptr            引用计数指针l        shared_array         引用计数数组l        weak_ptr           

2009-11-18 17:52:00 599

转载 源代码安全检测工具PC_Lint与ITS4实例 zz

 1. 目前代码的安全形势2 `4 S# {, ~% U4 a  1.1 缓冲区溢出问题( t) b6 W7 V) n: S- C  “缓冲区溢出”是越过了数组边界进行读写的一类内存访问错误。大家知道,在标准C 语言库中提供了许多关于字符串的操作的函数,如:gets() 、strcpy () 、strcat ( ) 、strcmp ( ) 、sprintf ( ) 等。它们在本

2009-11-04 11:32:00 2174

转载 AC3简介及压制攻略 zz

 AC3(Audio Coding 3)是Dolby(R)杜比公司于1996年开发的一种先进的音频编码模式,它是DVD音频的标准,其编码完全是数字的,压缩比约为1:9~10,但解码后可得符合人耳声学模型(0~20000Hz)的音频。其编码一般由ffmpeg完成,生成文件为*.AC3或*.A52。大家来传播AC3高品质音乐吧!!!!!请相互转载,宣传!!!!! AC3简介:杜

2009-10-29 14:27:00 2767

转载 MP3文件格式解析 zz

 MP3文件格式解析Peter Lee 2008-06-05 目录一、概述二、整个MP3文件结构三、MP3帧格式1. 帧头格式2. MAIN_DATA四、ID3标准1. ID3V12. ID3V2五、MP3文件实例剖析六、资料 一、             概述MP3 文件是由帧(frame)构成的,帧是 MP3 文件最小的组成单位。

2009-10-29 01:22:00 1206

转载 AVI文件格式 zz

小知识:AVI文件格式----摘自《DirectShow实务精选》 作者:陆其明 AVI(Audio Video Interleaved的缩写)是一种RIFF(Resource Interchange File Format的缩写)文件格式,多用于音视频捕捉、编辑、回放等应用程序中。通常情况下,一个AVI文件可以包含多个不同类型的媒体流(典型的情况下有一个音频流和一个视频流),不过含有单一

2009-10-29 01:18:00 559 1

转载 wav文件格式分析详解 zz

 一、综述    WAVE文件作为多媒体中使用的声波文件格式之一,它是以RIFF格式为标准的。RIFF是英文Resource Interchange File Format的缩写,每个WAVE文件的头四个字节便是“RIFF”。    WAVE文件是由若干个Chunk组成的。按照在文件中的出现位置包括:RIFF WAVEChunk, Format Chunk, Fact Chunk(可选), D

2009-10-29 01:01:00 575

转载 常见的声音文件格式 zz

 ★ WAVE,扩展名为WAV:该格式记录声音的波形,故只要采样率高、采样字节长、机器速度快,利用该格式记录的声音文件,质量非常高,但这样做的代价就是。★ MOD,扩展名MOD、ST3、XT、S3M、FAR、669等:该格式的文件里存放乐谱和乐曲使用的各种音色样本,具有回放效果明确,音色种类无限等优点。但它也有一些致命弱点,以至于现在已经逐渐淘汰,目前只有MOD迷及一些游戏程序中尚在使用。★ MP

2009-10-29 00:43:00 1688

转载 符号表

转摘:http://blog.csdn.net/prolibertine/archive/2006/12/19/1448426.aspx编译程序时放在符号表里的不光是内存地址和函数/变量的对应关系,还有很多在编译时要用到的信息。比如该节点的各种属性(类型,作用域,分配空间大小,(函数)的参数类型)等等。符号表与编译的各个阶段都有交互。对符号表的具体使用方法每个编译器都不同。         目标文

2009-10-15 09:32:00 695

转载 C和C++语言学习总结 zz

知识结构: 1、if,for,switch,goto 2、#define,const 3、文件拷贝的代码,动态生成内存,复合表达式,strcpy,memcpy,sizeof 4、函数参数传递,内存分配方式,内存错误表现,malloc与new区别 5、类重载、隐藏与覆盖区别,extern问题,函数参数的缺省值问题,宏代码与内联函数区别 6、构造和析构的次序,String函数定义 具体实现: 1、if

2009-10-14 22:17:00 453

原创 三谈内存对齐-背后的故事

记得以前曾经两次谈到过内存对齐话题,一次在也谈内存对齐一文中,另一次则是也谈内存对齐(续),今天下午和同事又谈到内存对齐的问题了,遂想继续挖掘下去,看看其背后的故事。关于内存对齐的中文文章多在介绍对齐的法则,比如为什么sizeof(T)和我们估计的T的大小有出入呢等等,而对于内存对齐的本质少有介绍,我在Google上搜索了一阵后,在IBM开发社区上发现一篇叫Data alignm

2009-10-12 19:53:00 726

转载 内存对齐问题 zz

什么是内存对齐    考虑下面的结构:         struct foo         {           char c1;           short s;           char c2;           int i;          };        假设这个结构的成员在内存中是紧凑排列的,假设c1的地址是0,那么s的地址就应该是1,c2的地址就是3,i的地址就是4

2009-10-12 19:47:00 375

转载 谷歌Chrome开发团队成员亮相 zz

1. 布赖恩·莱科夫斯基(Brian Rakowski),首席产品经理,负责Chrome与Firefox同步插件。   2. 本·古杰(Ben Goodger) ,软件工程师,Firefox 1.0前项目负责人。   3. 麦克·匹克顿(Mike Pinkerton),技术经理,负责Mac版Chrome。   4. 达林·费舍尔(Darin Fisher) ,软件工程师

2009-10-11 10:48:00 971

转载 chrome编译环境搭建 zz

  鼎鼎大名的chrome出世了,迫不及待的一睹芳容。版本还不成熟,功能不够完善,等等。这也与我的最初的想法差别不大。其实本身就浏览器多我而言吸引力不是太大,关键在于可以逐步的经历一个浏览器的成长才是最令人兴奋的事情。说个不是很恰当的例子,养孩子其实不是希望一下子就能到18岁,那样太没趣了,成长的过程才是最让人留恋的,可惜我没有孩子,这个玩意也不是我的孩子, :P~   不再废话,从下载开

2009-10-02 05:17:00 1512 2

转载 Chrome在Visual Studio 2005下的编译过程 zz

编译篇 研究Chrome ,首先得把它编译出来,这对于后续的代码分析和阅读有很大的帮助,想想自己编译出一个 Chrome 浏览器来使用,那是一件很炫的事情。  (声明:本文所编译的版本是2009.7.12号的chromium.r20011版本,目前最新的版本编译方法已经发生了变化,所以请在参考本文的同时,请参考另外一篇《Chrome在Visual Studio2005下编译过程(续

2009-10-02 04:40:00 1386

转载 模式匹配的KMP算法详解

模式匹配的KMP算法详解这种由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现的改进的模式匹配算法简称为KMP算法。大概学过信息学的都知道,是个比较难理解的算法,今天特把它搞个彻彻底底明明白白。注意到这是一个改进的算法,所以有必要把原来的模式匹配算法拿出来,其实理解的关键就在这里,一般的匹配算法:int Index(String S,String T,int p

2009-10-01 00:16:00 511

转载 Fibonacci(斐波纳契)数列求解 zz

  描述了动物繁殖数量、植物花序变化等自然规律。作为一个经典的数学问题,Fibonacci数列常作为例子出现在程序设计、数据结构与算法等多个相关学科中。  下面简单地分析一下常见的Fibonacci数列求解算法。  1、递归法。大多数教材在讲解递归算法时总喜欢以Fibonacci数列为例,这是因为我们可以直观地从定义公式的第三行看出Fibonacci数列的递归性。其C++实现如下:

2009-09-27 19:05:00 1873 2

转载 优先级反转 zz

定义:高优先级任务需要等待低优先级任务释放资源,而低优先级任务又正在等待中等优先级任务的现象叫做优先级反转。 两种经典的防止反转的方法:优先级继承策略(Priority    inheritance):继承现有被阻塞任务的最高优先级作为其优先级,任务退出临界区,恢复初始优先级。     优先级天花板策略(Priority    ceilings): 优先级天花板是指将申请(占有)某

2009-09-27 15:27:00 493

转载 Chrome编译与调试 zz

Chrome源码发布后,许多人与我一样,马上开始下载编译调试,希望一睹它的真面目。但这之中,有许多人与我一样,会碰到一此问题,所以将我的经历写下来,供大家参考1.编译问题a.源码下载   官方推荐的是用svn下载,我下载用了2天,试了两次,第一次下载后,编译没有过,很多问题,缺这缺那,但在修补这个的过程序中,明白了编译不过的原因。   源码下载一定要下载全,用svn下载时,因为速度

2009-09-25 15:16:00 1144

转载 手机AT指令集合zz

一、一般命令 AT+CGMI给出模块厂商的标识。 AT+CGMM获得模块标识。这个命令用来得到支持的频带(GSM900,DCS1800或PCS1900)。当模块有多频带时,回应可能是不同频带的结合。 AT+CGMR获得改订的软件版本。 AT+CGSN获得GSM模块的IMEI(国际移动设备标识)序列号。 AT+CSCS选择TE特征设定。这个命令报告TE用的是哪个状态设定上的ME。ME于是可

2009-09-22 13:45:00 711

转载 algorithm 函数表

     accumlate : iterator 对标志的序列中的元素之和,加到一个由 init 指定的初始值上。重载的版本不再做加法,而是传进来的二元操作符被应用到元素上。 adjacent_different :创建一个新序列,该序列的每个新值都代表了当前元素与上一个元素的差。重载版本用指定的二元操作计算相邻元素的差。 adjacent_find :在 iterator 对标志的元素范围

2009-09-15 15:20:00 667

转载 关于运行时类型识别typeid 【zhuan】

在程序中,当我们对多态类的基类指针使用typeid,就可以在运行时确定指针指向对象的实际类型,并输出对象类型的名字。#include  cstdlib > #include  iostream > #include  typeinfo > using   namespace  std;class  B{public :     virtual   void  fun(){}};class

2009-09-08 17:09:00 634

转载 reinterpret_cast const_cast dynamic_cast static_cast 区别使用【zhuan】

reinterpret_cast可以转换任意一个32bit整数,包括所有的指针和整数。可以把任何整数转成指针,也可以把任何指针转成整数,以及把指针转化为任意类型的指针,威力最为强大!但不能将非32bit的实例转成指针。总之,只要是32bit的东东,怎么转都行!     static_cast和dynamic_cast可以执行指针到指针的转换,或实例本身到实例本身的转换,但不能在实例和指针之间转换。

2009-09-08 16:48:00 624 1

转载 几种STL容器的基本用法[资料] 【转贴】

一、原型与构造函数Vector的原型可定义为vector > 其构造函数为vector()             //空的vector(al)          //指定一种allocatorvector(n)           //用默认T()初始化n个元素vector(n, val)   //用Val初始化n个元素vector(n,val,al)      

2009-09-07 19:04:00 485

转载 对包含Struct的Vector就其中的一种属性排序 [转贴]

#include #include #include using namespace std;struct StructTerm{ int TermID; float Occurency;};typedef vector TERMS;class Comparer{public: bool operator () (c

2009-09-07 19:00:00 635

转载 STL之迭代器基本概念 [转贴]

STL是C++中重要部分之一(面向对象、STL、模板等),其中三个基本的STL组件包括:1. 迭代器。迭代器之于容器相当于指针之于数组,提供了访问容器对象的方法,事实上C++中的指针也是一种迭代器,但是要注意迭代器不仅仅是指针,不一定具有地址值。2. 容器。容器是一种模板类,例如list、vector、deques等,一般由迭代器访问容器中的数据。3. 算法。STL中数据结构和算法是分离的,各种函

2009-09-07 18:05:00 1143

转载 C++ STL基本容器string,vector,list,deque,map..[转]

在STL中基本容器有: string、vector、list、deque、set、mapset 和map都是无序的保存元素,只能通过它提供的接口对里面的元素进行访问set:集合, 用来判断某一个元素是不是在一个组里面,使用的比较少map:映射,相当于字典,把一个值映射成另一个值,如果想创建字典的话使用它好了string、vector、list、deque、set 是有序容器 1.string st

2009-09-06 20:39:00 3493 1

转载 多线程技术在VC++串口通信程序中的应用研究

 1 概述  在现代的各种实时监控系统和通信系统中,在Windows 9X/NT下利用VC++对RS-232串口编程是常用的手段。Windows 9X/NT是抢先式的多任务操作系统,程序对CPU的占用时间由系统决定。多任务指的是系统可以同时运行多个进程,每个进程又可以同时执行多个线程。进程是应用程序的运行实例,拥有自己的地址空间。每个进程拥有一个主线程, 同时还可以建立其他的线程。线程是操作系统分

2009-08-23 19:59:00 2897

转载 WinSock网络编程实用宝典

一、TCP/IP 体系结构与特点   1、TCP/IP体系结构  TCP/IP协议实际上就是在物理网上的一组完整的网络协议。其中TCP是提供传输层服务,而IP则是提供网络层服务。TCP/IP包括以下协议:(结构如图1.1)(图1.1)   IP: 网间协议(Internet Protocol) 负责主机间数据的路由和网络上数据的存储。同时为ICMP,TCP,   UDP提供分组发送

2009-08-23 19:52:00 1147

转载 简单的TCP客户端

 介绍本文是《Winsock程序设计入门(1) - 简单的TCP服务器》一文的结局,如果你还没有读过第1部分的话,我还是建议你首先读一下。在本文中,我将示范给你如何编写一个简单的TCP客户端程序。我们要编写一个程序,这个程序将连接到一个HTTP服务器,并获得一个文件。一个简单的TCP客户端程序流程1、使用WSAStartup()初始化WinSock库。2、使用socket()创建一

2009-08-23 19:46:00 1461

转载 简单的TCP服务器

介绍WinSock API是一套供Microsoft Windows操作系统使用的套接字程序库,它最初基于Berkeley套接字,但是其中加入了一些Microsoft的特殊改动。在这篇文章中,我要试着给你介绍如何使用WinSock来进行套接字程序设计,并假设你没有在任何操作系统上进行过网络编程的经验。如果你只有一台单独的机器,那么不用着急,你仍然可以进行WinSock程序设计。你可以使用名为l

2009-08-23 19:44:00 862

转载 Socket(套接字)

Socket(套接字)  ◆先看定义:typedef unsigned int u_int;typedef u_int SOCKET;◆Socket相当于进行网络通信两端的插座,只要对方的Socket和自己的Socket有通信联接,双方就可以发送和接收数据了。其定义类似于文件句柄的定义。◆Socket有五种不同的类型:1、流式套接字(stream socket)定义:#de

2009-08-23 19:42:00 841

转载 Winsock开发网络通信程序的经典入门

对于许多初学者来说,网络通信程序的开发,普遍的一个现象就是觉得难以入手。许多概念,诸如:同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)等,初学者往往迷惑不清,只知其所以而不知起所以然。        同步方式指的是发送方不等接收方响应,便接着发下个数据包的通信方式;而异步指发送方发出数据后,等收到接收方发回的响应,才发下一个数据包的通信方式。       阻塞套

2009-08-23 19:41:00 569

转载 unix下编写socket程序的一般步骤

在unix下写socket程序可能是最方便,你只要掌握其一般步骤,就可以松的写出面向传输层的应用。   1、理解几个常用的socket函数  #include   #include   int socket(int domain,int type,int portocol);  domain指所使用的协议族(family)可以为AF_UNIX和AF_INET,一般只用AF_INET(指Intern

2009-08-23 19:38:00 600

转载 winsocket编程实例

#include #include void main(){  WORDwVersionRequested;  WSADATA wsaData;  int err;     wVersionRequested = MAKEWORD(1,1);    err = WSAStartup(wVersionRequested,&wsaData);  if( err != 0){      return

2009-08-23 19:37:00 906

转载 Windows Socket简介

Windows 的Socket函数有许多, 我没有做详细介绍, 这里的函数都是简要说明其用途, 详细用法请参考MSDN.这里的主要目的是为了后面的三个应用服务.函数说明:--------- WSAStartup函数初始化Winsock[声明]int WSAStarup(WORD wVersionRequested,LPWSADATA lpWSAData);[参数]wVersionR

2009-08-23 19:30:00 528

转载 Beej’s网络编程向导

目录 1.  介绍1.1          观众1.2          平台和编译器1.3          官方的主页1.4          Solaris/SunOS 程序员手册1.5          Windows程序员手册1.6          电子信函政策1.7          反映1.8          翻译者手册1.9     

2009-08-23 19:26:00 683

转载 C 语 言 设 计 一 个 Windows Socket

对程序员来说,可以把socket看成一个文件指针,只要向指针所指的文件读写数据,就可以实现双方通信。利用socket进行通信,有两种主要方式。 第一种是面向连接的流方式,两个通信的应用程序之间先要建立一种连接链路,数据才能被正确传送接收。这种方式对应的是TCP协议。特点是:通信可靠,对数据有校验和重发机制,通常用作数据文件的传输,如ftp、telnet。 第二种是无连接的数据报文方

2009-08-23 19:25:00 737

空空如也

空空如也

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

TA关注的人

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