摘要: 内存对齐在我们的程序中,数据结构还有变量等等都需要占有内存,在很多系统中,它都要求内存分配的时候要对齐,这样做的好处就是可以提高访问内存的速度。我们还是先来看一段简单的程序: 程序一1#include2usingnamespacestd;34structX15{6inti;//4个字节7charc1;//1个字节8charc2;//1个字节9};1011structX212{13charc1;//1个字节14inti;//4个字节15charc2;//1个字节16};1718structX319{20charc1;//1个字节21charc2;//1个字节22inti;//4个字节23};24 阅读全文
posted @ 2012-07-29 15:35 dancingrain 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 首先看一段代码以及运行结果,我将结合该段代码讲解指针和引用的两点区别:// // main.cpp // testC++02 // // Created by fei dou on 12-7-29. // Copyright (c) 2012年 vrlab. All rights reserved. // #include #include using namespace std; int main (int argc, const char * argv[]) { string str1 = "I am a simple string object"; s... 阅读全文
posted @ 2012-07-29 14:03 dancingrain 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 个人觉得这篇文章是网上的介绍有关KMP算法更让人容易理解的文章了,确实说得很“详细”,耐心地把它看完肯定会有所收获的~~,另外有关模式函数值next[i]确实有很多版本啊,在另外一些面向对象的算法描述书中也有失效函数 f(j)的说法,其实是一个意思,即next[j]=f(j-1)+1,不过还是next[j]这种表示法好理解啊: KMP字符串模式匹配通俗点说就是一种在一个字符串中定位另一个串的高效算法。简单匹配算法的时间复杂度为O(m*n);KMP匹配算法。可以证明它的时间复杂度为O(m+n).。一.简单匹配算法 先来看一个简单匹配算法的函数:(C代码) int Index_BF ( cha.. 阅读全文
posted @ 2012-07-28 13:17 dancingrain 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 国外知名网站 stackoverflow 上有一个问题调查: 哪本书是对程序员最有影响、每个程序员都该阅读的书?, 这个调查已历时两年,目前为止吸引了 153,432 人访问,读者共推荐出了 478 本书(还在增加),其中最火的一本书《Code Complete》被顶了 1333 次。如果你是个程序员,你一定有兴趣看看这些书里你都看过几本,如果你一本没看过的话,我也不好说什么,也许你是个天 才,但我相信大多数人都知道,你在学校里根本学不到什么真正的工作中需要的知识,我们毕业后能帮助我们在公司中胜任工作的老师就是这些优秀的书籍,一本好 书可以改变一个人的一生。 下面是这个调查中排名靠前的书的一个 阅读全文
posted @ 2012-07-27 13:54 dancingrain 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 首先,贴上实现的源代码:// // main.cpp // testC++1 // // Created by fei dou on 12-7-26. // Copyright (c) 2012年 vrlab. All rights reserved. // #include #include using namespace std; void primeLessThanN( int n) { if(n < 1) return ; bool *isPrime = new bool[n+1];//动态生成一个数组 memset((void*)isPrime... 阅读全文
posted @ 2012-07-27 09:44 dancingrain 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。下面一系列文章将对爬虫技术做详细的介绍,希望大家最终能够做出自己喜爱的爬虫。网络爬虫技术随着网络的迅速发展,万维网成为大量信息的载体,如何有效地提取并利用这些信息成为一个巨大的挑战。搜索引擎(Search Engine),例如传统的通用搜索引擎AltaVista,百度,Yahoo!和Google等,作为一个辅助人们检索信息的工具成为用户访问万维网的入口和指南。但是,这些通用性搜索引擎也存在着一定的局限性。搜索引擎中网络爬虫的设计分析下面简单介绍一下搜索引擎的机器爬虫的制作和一些基本要注意的事项。说的简单易懂 阅读全文
posted @ 2012-07-26 18:20 dancingrain 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 关于如何在页面中使用EGORefreshTableHeaderView的文章网上一大把, 抄来抄去的, 但也都没什么大问题. 只是在XCode4.2的ARC环境中使用的时候, 错误一把. 借此机会, 完整的记录一下如何排除错误, 及使用的方法.首先第一步当然是下载这个下拉更新的框架了. https://github.com/enormego/EGOTableViewPullRefresh/downloads下载之后解包, 然后将EGORefreshTableHeaderDelegate.hEGORefreshTableHeaderDelegate.m这两个文件, 以及项目中的图片文件都复制到你 阅读全文
posted @ 2012-07-25 14:20 dancingrain 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 一、使用流1、到底什么是流 cout和cin都是在C++的std命名空间中预定义的流实例。 每个输入流都有一个相关联的源,每个输出流都有一个相关联的目的。2、流的源和目的 控制台流、文件流、字符串流,还有比如打印机输出或网络I/O是由操作系统提供的,并没有内置到C++语言中。3、流输出 ①、cout流是把数据写到控制台或者标准输出的内置流。 ②、C++流可以正确地解析C风格的转义代码,比如包含\n的字符串,但是这样的情况下,内置的endl机制会更好。使用endl用于表示行结束字符并刷新输出缓冲区。 put()和write()是原始的输出方法,它们是cout提供的公共方法。 向输出流写数据时,流 阅读全文
posted @ 2012-07-19 23:31 dancingrain 阅读(448) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是 JSON JSON概念很简单,JSON 是一种轻量级的数据格式,他基于 javascript 语法的子集,即数组和对象表示。由于使用的是 javascript 语法,因此JSON 定义可以包含在javascript 文件中,对其的访问无需通过基于 XML 的语言来额外解析。不过在使用 JSON 之前,很重要的一点是理解 javascript 中数组及对象字面量的特殊语法。1.1 数组字面量 数组字面量,是用一对方括号括起一组用逗号隔开的 javascript 值,例如: var aNames=["hello", 12, true , null];1.2 对象字 阅读全文
posted @ 2012-07-17 13:37 dancingrain 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 最近正在准备毕业答辩,基本材料已经准备停当,现在有些闲暇时间。突然从自己书堆中翻出了一本讲解C/C++语言的书,想来闲着也没有什么事,不如温习以下以前学过的知识。所以,这里就简单写一点自己对C/C++中琐碎知识点的理解,有什么不准确的地方还望读者指正,大家一起探讨!1.C中的指针和C++中引用的比较C++中引入了引用(reference)的概念,引用并不是C++的新发明,它也存在于其它的变成语言之中。从功能上来说,C++中引用的作用和C中的指针在本质上是相同的,都表示“地址”。例如,我们有这样一个C代码函数:void fun(int *n){//some condes}在这个函数中,我们给函数 阅读全文
posted @ 2012-05-21 15:30 dancingrain 阅读(197) 评论(0) 推荐(0) 编辑