- 博客(14)
- 资源 (5)
- 收藏
- 关注
转载 socket编程原理
转自http://www.chinaunix.net/old_jh/4/198859.htmlsocket编程原理 1 问题的引入 UNIX系统的I/O命令集,是从Maltics和早期系统中的命令演变出来的,其模式为打开一读/写一关闭(open-write-read-close)。在一个用户进程进行I/O操作时,它首先调用“打开”获得对指定文件或设备的使用权,并返回称为文件
2013-10-11 20:37:19
613
转载 字符串模式匹配KMP算法
转自:http://blog.chinaunix.net/uid-26548237-id-3367953.html KMP字符串模式匹配通俗点说就是一种在一个字符串中定位另一个串的高效算法。简单匹配算法的时间复杂度为O(m*n);而KMP算法,可以证明它的时间复杂度为O(m+n)。一、简单匹配算法 先来一个简单的匹配算法的函数。int Index_BF
2013-09-04 09:56:43
577
转载 C语言的谜题
转自http://coolshell.cn/articles/945.html 我们可以看到很多C语言相关的一些东西。比如《语言的歧义》主要告诉了大家C语言中你意想不到的错误以及一些歧义上的东西。而《谁说C语言很简单》则通过一些看似你从来不可能写出的代码来告诉大家C语言并不是一件容易事情。《6个变态的hello world》和《如何弄乱C的源代码》则以一种极端的方式告诉大家,不要以为咱们自
2013-08-27 16:42:42
424
转载 判断一个点是否在一个多边形内部
如何判断一个点是否在一个多边形内部 在多边性的存储中,每一个多边形都是由一系列连续的点组成,例如保存为数组Polygon[5],表示这个多边形是由5个点组成,这5个点顺序地存储在了数组Polygon之中。就如同走路一般地划线,从数组的第一个点连到第五个点,多边行就构造出来了。 在图形编程中,坐标的利用是不可忽视的。在这里判断一个点是否在多边行
2013-06-21 17:23:39
747
转载 如何测试洗牌程序
如何测试洗牌程序转载自:http://blogread.cn/it/article/6311?f=wb我希望本文有助于你了解测试软件是一件很重要也是一件不简单的事。我们有一个程序,叫ShuffleArray(),是用来洗牌的,我见过N多千变万化的ShuffleArray(),但是似乎从来没人去想过怎么去测试这个算法。所以,我在面试中我经常会问应聘者如何测试ShuffleAr
2013-05-30 09:16:22
527
转载 OpenCv使用SVM
参考http://guyvercz.blog.163.com/blog/static/252545292011112974915402/用OpenCV使用SVM算法的大概流程是 1)设置训练样本集需要两组数据,一组是数据的类别,一组是数据的向量信息。2)设置SVM参数利用CvSVMParams类实现类中的成员变量svm_type表示SVM类型:CvSVM::
2013-05-15 15:34:05
828
原创 宏定义
宏定义宏定义是C提供的三种预处理功能的其中一种,这三种预处理包括:宏定义、文件包含、条件编译。宏定义又称为宏代换、宏替换,简称“宏”。它定义了一个代表特定内容的标识符。预处理过程会把源代码中出现的宏标识符替换成宏定义时的值。宏最常见的用法是定义代表某个值的全局符号。宏的第二种用法是定义带参数的宏,这样的宏可以像函数一样被调用,但它是在调用语句处展开宏,并用调用时的实际参数来代替定义
2013-05-14 17:22:50
720
原创 C++运算符能否重载以及优先级问题
C++中可重载的运算符:算术运算符:+,-,*,/,%,++,--;位操作运算符:&(按位与),|(按位或),~(按位求反),^(位异或),<<(左移),>>(右移)逻辑运算符:!(逻辑求反),&&(逻辑与),||(逻辑或);比较运算符:<,>,>=,<=,==,!=;赋值运算符:=,+=,-=,*=,/=,%=,&=,|=,^=,<<=,>>=;其他运算符:[],(),-
2013-05-14 16:10:22
7210
转载 C++四种强制类型转换的总结
转自http://hb.qq.com/a/20110722/001452.htmC风格的强制类型转换(Type Cast)很简单,不管什么类型的转换统统是: TYPE b = (TYPE)a C++风格的类型转换提供了4种类型转换操作符来应对不同场合的应用。 const_cast,字面上理解就是去const属性。 static_cas
2013-05-14 11:20:17
384
转载 程序-内存分配
在C++中,内存可分为系统数据区,自由存储区,文本区,const数据区,全局静态区,堆区和栈区。其中,系统数据区存放的是系统数据,我们是不能自由访问的,有时候windows系统会突然弹出一个消息框,内容是“内存不能为read”就是错误访问系统数据区的结果;自由存储区用来存放由C延伸而来的malloc()函数所分配的数据;文本区存放着我们的函数代码,我们调用函数时的底层行为就类似于先去操作一个指针,
2013-05-12 12:07:27
358
转载 堆(heap)和栈(stack)的区别
堆和栈的区别简单的可以理解为: heap:是由malloc之类函数分配的空间所在地。地址是由低向高增长的。 stack:是自动分配变量,以及函数调用的时候所使用的一些空间。地址是由高向低减少的。 预备知识—程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。
2013-05-12 11:37:34
391
转载 解析C语言结构体对齐(内存对齐问题)
转自 http://blog.sina.com.cn/s/blog_671d96d00100hhv9.html C语言结构体对齐也是老生常谈的话题了。基本上是面试题的必考题。内容虽然很基础,但一不小心就会弄错。写出一个struct,然后sizeof,你会不会经常对结果感到奇怪?sizeof的结果往往都比你声明的变量总长度要大,这是怎么回事呢?开始学的时候,也被此类问题困扰很久。其实相关
2013-05-12 11:27:05
444
原创 C语言中的auto、static、register和extern的区别
C语言中的auto、static、register和extern的区别C语言中的每一个变量和函数有两个属性:数据类型和数据的存储类别。数据类型(整形、字符型等),存储类别是指数据在内存中存储的方法,存储方法有两大类:静态存储类和动态存储类。具体包括四种:自动的(auto),静态的(static),寄存器的(register)和外部的(extern)。auto变量:函数中的局部变量,
2013-05-09 10:45:55
978
转载 类成员变量初始化专题
类成员变量初始化专题 1. C++变量的初始化方式首先把需要初始化的成员变量分为几类:Ø一般变量(int)Ø 静态成员变量(static int)Ø 常量(const int )Ø 静态常量(static const int)对应的初始化方式是:Ÿ一般变量可以在初始化列表里或者构造函数里初始化,不能直接初始化或者类外初始化Ÿ静态成员变量必须在类外
2013-04-26 16:08:28
488
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人