自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

honpey爱编程

爱编程,爱思考

  • 博客(75)
  • 资源 (13)
  • 收藏
  • 关注

原创 编译qemu时添加选项

编译qemu时,如果什么选项都不加

2014-07-02 23:33:40 1682

原创 操作系统,CPU,编译器,运行时库,系统调用的关系 之 编译器篇

操作系统,CPU,编译器,运行时库,系统调用。这是计算机科学中相对高大上的几个概念,许多科班出身的码农甚至也搞不清楚一个简单代码执行过程中,哪块是操作系统控制,哪块是编译器控制,CPU到底扮演了何种角色,什么是运行时库。思考问题,我们首先要把握宏观,掌握好了大致情况,然后再对自己感兴趣的节点做深入分析。这是一种很实用的思考问题的方式,不会让你陷入“局部最优解”,更重要的是,它可以让你更深刻地理

2014-03-17 23:22:23 3002 1

转载 shell脚本写的一个图片抓取器

和大家分享下一个shell脚本写的图片抓取器,该程序来自《Linux Shell脚本攻略》。记得去年找工作面试时,听到一位同学说自己非常喜欢linux,我相信他说的是真的,我觉得喜欢linux的人很大的快乐来自shell脚本,因为它能够整合linux上的各种资源干大事。用法:复制以下代码,命名为img_downloader.sh。使用时在shell下输入 ./img_downloader.sh

2014-02-28 23:24:44 1380 1

原创 ubuntu终端(terminal)下听歌

终端下听歌,使用sox,sox包不但可以听歌,还可处理音频。sudo apt-get install sox但是网上现有资料各种不全面啊,play ××.mp3各种打不开mp3文件,只要加上如下的包即可:sudo apt-get install libsox-fmt-mp3可以听歌了:play ×××.mp3

2013-07-27 23:01:15 1125

转载 程序设计竞赛网站集锦

(1)信息学初学者之家:http://oibh.ioiforum.org/(2)大榕树编程世界:http://www.fjsdfz.org/~drs/program/default.asp(3)中国教育曙光网:http://www.chinaschool.org/aosai/(4)福建信息学奥林匹克:http://www.cfcs.com.cn/fjas/index.htm(5)第

2013-07-11 21:28:39 1674

转载 sizeof解析C语言

sizeof是C语言中判断数据类型或者表达式长度符;不是一个函数,字节数的计算在程序编译时进行,而不是在程序执行的过程中才计算出来。文章来源:http://blog.sina.com.cn/s/blog_5c717fa001012ml7.htmlsizeof函数功能:计算数据空间的字节数1.与strlen()比较strlen计算字符数组的字符数,以"\0"为结束判断,不

2013-07-08 10:34:30 667

转载 你平时读的专业书籍或访问的技术网站有哪些?

转载自新书《程序员面试笔试宝典》官网“好马配好鞍,好鞍配好马”。一般认为,程序员的个人能力与其阅读的书籍数量、书籍质量存在着巨大的关联关系,所以面试官有时会把求职者阅读的专业书籍作为评价求职者个人水平和能力的重要标准,在他们看来,能够阅读高水平书籍的求职者一般基础知识更加牢固,发展前景更加明朗。所以如果能够回答出一些比较经典的书籍,无疑对面试的成功会有很大的帮助。表12- 1为一些经典

2013-07-03 14:46:16 1086

原创 野指针与空指针

野指针是指没有进行初始化的、一种不正常的指针,空指针被NULL初始化,是一种正常的指针。#include int *p1;//全局对象默认初始化,所以p1是空指针int main(){int *p2;//野指针}野指针成因有三种:一、指针变量没有被初始化 ( 如上程序所示 );二、指针p被free或者delete之后,没有置为NULL; 三、指针操作超越了变量的作用范围,如函数返回

2013-07-03 11:42:39 669 1

转载 图像处理和图像识别中常用的OpenCV函数

文章来源:http://blog.csdn.net/fengbingchun/article/details/58162531.   cvLoadImage:将图像文件加载至内存;2.   cvNamedWindow:在屏幕上创建一个窗口;3.   cvDestroyWindow:销毁显示图像文件的窗口;4.   cvDestroyAllWindows:销毁显示图像文件的所有窗

2013-07-03 10:57:43 1862

转载 vim代码补全

参考:使用ctags和OmniCppComplete-taglist- cscope-global        http://blog.chinaunix.net/uid-11770217-id-323264.html

2013-07-02 15:26:24 2560

原创 逆天的C++:显式类型转换

显式类型转换也叫做强制类型转换,强制转换的操作符包括:static_cast、dynamic_cast、const_cast、reinterpret_cast。(1)static_cast。C++中所有的隐式类型转换都可以通过此运算符完成,尤其对于会损失精度的大算术类型赋值小算术类型的情况,有了static_cast描述符,编译器便会认为这是条正常语句,而不会报告警告信息;另一个典型的应用场景

2013-07-02 00:26:45 770

转载 printf参数汇总

文章来源:printf 参数汇总格式描述串"是由一系列的"格式转换说明符号"组成,格式转换说明符号的描述形式如下:% [+][-] 0 m[.n] [输出精度] (1)形式字母:制定输出格式,如表d:十进制整型数i:十进制整型数x:十六进制整型数o:八进制整型数u:无符号十进制整型数c:单个字符;s:字符串e:指数形式的浮点数f:小数形式的浮点数

2013-06-28 10:55:28 698 1

原创 C与C++使用struct的不同

以前总是在C++中使用struct,因此诸如以下的语句会无错编译:struct node{ double a; node *left; node *right;}......node * InitNode(node *root,node *newnode){ .....}但是对于纯净的C编译器来说,以上这段代码就出问题了。C编译器不会默认认为nod

2013-06-27 15:09:11 707

原创 C和C++混合编程中编译器(VS2008)设置

C和C++的公共部分是完全相同的吗?在平台一致的前提下,C++编译器能够编译C的程序吗?好像是可以,但是不一定!比如内存申请函数calloc中,使用C编译器的时候,你这样做编译通过:int * pInt= calloc(n,sizeof(int));但如果编译器是C++的,那么以上语句就通不过编译了,必须这样才行:int * pInt=( int *) calloc(n,siz

2013-06-25 16:27:43 2091

原创 cygwin安装

cygwin安装的镜像源选择:ftp://mirrors.neusoft.edu.cn。其他的,包括163的源都不是很快。这篇安装教程不错:http://www.doc88.com/p-496273403901.html

2013-06-24 15:38:42 1120

原创 使用g++编译OpenCV程序

源码: #include #include #include "opencv2/core/core.hpp" #include "opencv2/features2d/features2d.hpp" #include "opencv2/highgui/highgui.hpp" #include #include using namespace cv; using

2013-06-21 10:51:41 3553 1

转载 Emacs和Vim:神的编辑器和编辑器之神

好的文章总会使人热血沸腾,在此贴出来写Linux下两大神编辑器的一段文章。文章来源:http://os.51cto.com/art/201101/242518.htm0. 序章:神器的传说在这个蔚蓝色的星球上,流传着两大神器的传说:据说Emacs是神的编辑器,而Vim是编辑器之神。追求独步天下的高手和低手们争着一睹它们的风采,可看到它们朴素单薄的界面后,不禁心下怀疑:这就是

2013-06-19 23:06:45 975 1

原创 OpenCV学习:Mat类详细解析+源码剖析(四)MSize类和Mstep类

Msize类和MStep类是Mat的内部嵌套类:class CV_EXPORTS Mat{public: ...... struct CV_EXPORTS MSize { MSize(int* _p); ...... int* p; }; struct CV_EXPORTS MStep {

2013-06-12 20:18:25 3464

原创 OpenCV学习:Mat类详细解析+源码剖析(三)遍历矩阵中元素

本节主要介绍如何遍历Mat数组中的元素,遍历Mat中元素的相关函数,其中包括at族函数和ptr族函数,以及矩阵内存的布局,以及许多C++相关的知识点,这是整个Mat类的精髓,也注定了这将是华丽丽的一篇!你如何定位矩阵中的元素?OpenCV Tutorials中给出了三种方法遍历数组中的元素:(一)高效的经典的C运算子[ ]方法;(二)安全的C++中迭代器方法;(三)动态地址计算方法。下面简

2013-06-12 20:18:02 4642 1

原创 OpenCV学习:Mat类详细解析+源码剖析(二)构造函数

Mat类的构造函数,析构函数:Mat类的构造函数与析构函数太多了,真的太多了,这是可以理解的。矩阵是图像的基本数据结构,对于数字图像处理的人来说,矩阵是我们看待图像的一个重要角度,甚至是一个最主要的角度,因为,我们做的所有动作几乎都是在矩阵的基础之上完成的!矩阵是如此得基础,如此得任重道远,因此,矩阵类的实现自然不能怠慢。在具体应用上,有时我们直接声明一个矩阵了事,比如Mat img;有时,我

2013-06-12 20:17:47 3946

原创 OpenCV学习:Mat类详细解析+源码剖析(一)

Mat类是一种基础的数据结构,属于OpenCV中的C++系列函数(类),摸清Mat的脉络,有助于进行后续的图像处理工作,下面就好好说说Mat类。OpenCV中Mat类声明路径:opencv-2.4.5/modules/core/include/opencv2/core/core.hppOpenCV中Mat类实现路径:opencv-2.4.5/modules/core/include/ope

2013-06-12 20:17:32 2779

原创 C++ 中operator用法:隐式类型转换

C++中的operator主要有两个作用,一是操作符的重载,一是操作符的转换。对于操作符的重载,许多人都不陌生,用以下这个小例子温故一下:class A{    public:    A operator +(A& oa){A a;a.num=oa.num+num;return a;}    int num;};int main(int argc,char* argv[])

2013-06-09 21:40:57 5712 2

原创 OpenCV学习:fastAtan2函数解密

高中数学中各种正弦函数,余弦函数总是把人搞得头大,但是具体应用时你会发现,其实你只需要搞清楚一个2π空间内函数分布即可。下面分析OpenCV中fastAtan2函数是怎么处理的方向问题。fastAtan2函数在OpenCV中用户非常广,比如在SIFT描述子求取过程中需要计算特征点的方向,此时OpenCV的源码中就是使用的fastAtan2函数,fastAtan2函数原型如下:float

2013-06-04 17:08:53 8531 2

原创 隐式类类型转换

C++ Primer中有这样一句话:可以用单个实参来调用的构造函数定义了从形参类型到该类类型的一个转换。这句话用下面一段代码表示为:class A{ A(B b);//单个实参的构造函数 func(A a);} .....A a;B b;a.func(b);//func函数本应该接受A类型的实参,但是由于特殊构造函数的存在,所以B类型的参数b借助这个特殊的构造函

2013-06-04 08:28:40 4588 9

原创 Ubuntu下配置OpenCV

ubuntu版本13.04,OpenCV版本2.4.5需要准备的程序:Cmake和OpenCV源文件。我将整个过程分为以下三个步骤:1)安装Cmake;2)编译OpenCV;3)路径设置。下面详细说明三个阶段,以及每个阶段的意义。1)安装Cmake。Cmake的作用是生成makefile文件。sudo apt-get  install cmake。2)编译OpenCV

2013-05-31 03:09:24 2641

原创 Ubuntu命令实战(持续更新中......)

(1)一个大文件夹下,我想找包含某个字符串的文件,比如在OpenCV文件夹下寻找函数fastAtan2所在的文件。find和grep配合。find命令是查找当前文件夹下特定的文件(目录),(2)将别名命令alias写入到系统的配置文件当中,以防止自己定义的变量在bash注销后失效。用户个人偏好的配置文件应该写入的文件是你主目录下的 .bashrc文件,文件名第一个字符是个点,因此这个文

2013-05-30 09:21:28 974

原创 SIFT解析(三)生成特征描述子

以上两篇文章中检测在DOG空间中稳定的特征点,lowe已经提到这些特征点是比Harris角点等特征还要稳定的特征。下一步骤我们要考虑的就是如何去很好地描述这些DOG特征点。----------------------------------------------------------------------------------------------------------------

2013-05-29 11:15:40 11398 24

原创 SIFT解析(二)特征点位置确定

最近微博上有人发起投票那篇论文是自己最受益匪浅的论文,不少人说是lowe的这篇介绍SIFT的论文。确实,在图像特征识别领域,SIFT的出现是具有重大意义的,SIFT特征以其稳定的存在,较高的区分度推进了诸多领域的发展,比如识别和配准。上一篇文章,解析了SIFT特征提取的第一步高斯金字塔的构建,并详细分析了高斯金字塔以及差分高斯金字塔如何完成一个连续的尺度空间的构建。构建高斯金字塔不是目的,目的是如

2013-05-27 23:07:35 8444 11

原创 OpenCV学习:将图像转为二值图像(函数cvtColor和函数threshold)

想换一下CSDN账户的头像,换成自己的真实的头像,但是又不想那么直接,干脆就把头像转换成二值图得了,因为从二值图像是推不出来原图的。这个过程需要OpenCV的两个函数,第一个函数是彩色图像转化为灰度图像:cvtColor函数;下一个函数是由灰度图转化为二值图像函数:threshold函数。用法很简单,代码如下: cvtColor(img_origin,img_gray,CV_BGR2

2013-05-25 11:28:24 14396 1

原创 Ubuntu命令学习:bash中变量内容的删除、替代与替换

一个变量的内容可能经常被替换的,比如说我安装了某软件,但是软件的可执行文件没有被更新到环境变量中去,因此不得不每次进入安装文件的bin目录下去执行相应的可执行程序来启动程序,这是很麻烦的一件事情。你可以将这个bin目录追加到PATH环境变量中,以此便能一劳永逸,无论在任何路径下都能启动该应用程序了。但是对于刚刚开始正式使用Ubuntu的菜鸟来说,一切没有那么顺利的,你会犯错,甚至把PATH环境变量

2013-05-17 23:24:05 2026

转载 Configure参数解析

文章来源:http://www.lisdn.com/html/63/n-12363.htmlLinux环境下的软件安装,并不是一件容易的事情;如果通过源代码编译后在安装,当然事情就更为复杂一些;现在安装各种软件的教程都非常普遍;但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而解了。Configure脚本配置工具就是基础之一,它是autoconf的工具的基本应用。'c

2013-05-16 16:24:32 553

转载 PKG_CONFIG_PATH变量 与 ld.so.conf 文件

文章来源:http://hi.baidu.com/dexinmeng/item/73768319cb45edf864eabf2c一、编译和连接        一般来说,如果库的头文件不在 /usr/include 目录中,那么在编译的时候需要用 -I 参数指定其路径。由于同一个库在不同系统上可能位于不同的目录下,用户安装库的时候也可以将库安装在不同的目录下,所以即使使用同一个库,由于库

2013-05-16 10:41:16 1435

转载 Linux命令之dos2unix - 将DOS格式文本文件转换成UNIX格式

转自:http://blog.sina.com.cn/s/blog_7226f3660100uipz.html用途说明dos2unix命令用来将DOS格式的文本文件转换成UNIX格式的(DOS/MAC to UNIX text fileformat converter)。DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就是0D0A。而Unix下的文本文件是以\n作为

2013-05-10 16:05:57 1142

原创 定位new表达式

说起new,大部分人想起的是C++中的动态内存申请,比如 int *pInt=new int(12);今天说一下一个更深入的 operator new。construct函数是C++ STL中的一个全局函数:template inline void construct(T1 *p,const T2& value){ new (p) T1(value);}这里的new

2013-05-07 17:02:48 658

原创 由push_back引起的复制构造函数

以下这段程序有错误,是关于没有复制构造函数的错误,下面我们将解开这段程序错误之谜:#include #include #include using namespace std;int i=0;int j=0;class CDemo{ public: CDemo():str(NULL){cout<<"constructor_"<<i++<<endl;};

2013-05-07 11:42:33 1202

原创 析构函数什么时候调用

构造函数的一个重要作用是为对象申请资源,相应地,析构函数要负责释放这些资源。下面理解一下析构函数:何时调用析构函数:(以下摘自《C++ Prime》Page 412)撤销类对象时会自动调用析构函数;变量在超出作用域时会自动撤销;动态分配的对象只有在指向该队向的指针被删除时才撤销;如果没有删除指向动态对象的指针,则不会运行该对象的析构函数,对象会一直存在,从而导致内存泄漏。PS:当对象的引用

2013-05-07 11:38:00 5101

原创 vector中erase干了什么

今天碰到一个笔试题,问下面这段程序错在哪里:vector array;vector::iterator itor;vector::iterator itor2;for(itor=array.begin();itor!=array.end();){ if(6==*itor) { itor2=itor; array.erase(itor2);

2013-05-07 09:57:30 604

原创 函数返回值是const或者const引用

const表明一个值是不可更改的,我一直试图了解如下语句中,const的作用const int & getInt();int & getInt();二者的差距在于前者的返回值是个右值,后者的返回值是个左值。也就是说,前者返回后只能赋值给其他变量(因为它被const修饰了,也就是说这个这个变量所指向的内存是不能被更改的),而后者可以称为赋值的对象。对此,我写了如下一个程序段:

2013-04-24 22:38:30 7133 1

转载 Ubuntu添加网络打印机

http://liunian.info/ubuntu%E6%B7%BB%E5%8A%A0%E7%BD%91%E7%BB%9C%E6%89%93%E5%8D%B0%E6%9C%BA.html以前从没连过打印机,现在需要使用部门的打印机,但 System Settings -> Prints 有问题,无法添加网络打印机。Google 了一下,直接终端运行命令 system-config

2013-04-24 22:06:54 1623

原创 STL 中list删除元素

list容器中删除元素分如下两种情形,第一种是很大条地使用remove函数输入list的头部iterator和尾部iterator,如下代码list ilist;ilist.push_back(1);ilist.push_back(2);remove(ilist.begin(),ilist.end(),1);//删除整个list中值为1的字节点上面这个程序不需要用户参与,属于比

2013-04-24 11:01:42 2795 4

基于windows的socket编程

socket网络编程,没有选用线程模式,而是选用的异步的select模型。windows下的WSASelect模型,基于消息传递机制,实现了一个服务器和客户端,聊天

2012-06-04

基于Spartan 3E的FPGA系统搭建

实验基于Spartan 3E开发板,赛灵思公司提供的EDK开发环境,将EDK中提供的软核加载到开发版上,调试,集成。助于电子硬件设计,稍微涉及Verilog语言编程。适用于电子工程,计算机相关专业电子设计入门实验。

2011-08-16

数据结构 二叉搜索树

大二《数据结构》课程设计 二叉搜索树实现算法

2011-08-06

数据结构 迷宫设计 C++

大二《数据结构》课程设计 迷宫算法设计 C++

2011-08-06

堆算法 最大堆 最小堆

数据结构课程设计 堆算法 最大堆 最小堆 相关堆算法

2011-08-06

排课系统 数据结构课程设计

数据结构课程设计拓扑排序延伸练习 排课系统

2011-08-06

编译原理课程设计 PL0语言编译器(转)

大三《编译原理》 PL0语言编译器 C++实现

2011-08-06

数值计算实验总汇 拉格朗日等算法

计算机专业 数值计算 课程 随课实验拉格朗日 LDL 牛顿插值 最小二乘 牛顿迭代 贝龙格

2011-08-06

霍夫曼算法 二叉树 计算机软件专业

数据结构 随课实验设计 霍夫曼树一节 课本有源码 源码基本与课本一致

2011-08-06

数据结构 排序 计算机软件专业

适用于大二《数据结构》随课编程实验,各种排序算法一节

2011-08-06

Linux内核实验 计算机专业

计算机专业 Linux内核实验报告 shell编程 进程同步机制 锁的实现 内核定时器 动态模块设计 新的内核同步机制 设备驱动 文件系统实验

2010-10-02

Linux实验报告 计算机专业

计算机专业 Linux内核实验报告 shell编程 进程同步机制 锁的实现 内核定时器 动态模块设计 新的内核同步机制 设备驱动 文件系统实验

2010-10-02

PHP安装中的PHP

PHP安装的组建之一php-5.2.11-Win32

2010-06-25

空空如也

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

TA关注的人

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