- 博客(26)
- 资源 (18)
- 收藏
- 关注
原创 【网络编程】之七、select聊天室
好久没有用MFC 来写代码了,手都生疏了,悲剧啊,好多API 都去查的 哎~~~好了 下面把 我们聊天室的代码贴出:select函数封装:BOOL CserverDlg::Select_Server(SOCKET sock, int nTime /* = 100 */, BOOL bRead /* = TRUE */){ fd_set fdset; timeval
2012-08-28 21:08:03 1992 1
原创 【网络编程】之六、选择select
select模型在五中模型中是最简单,最容易实现的,当然他的效率当然不如其他四种;select可以去监视一个套接字,看哪个socket有消息到来;int select( _In_ int nfds,//忽略 _Inout_ fd_set *readfds,//一个用于检测可读性的参数 _Inout_ fd_set *writefds,//检查可写性 _Ino
2012-08-22 20:48:07 1848
原创 【网络编程】之五、异步模型
注:本文部分转载一:select模型二:WSAAsyncSelect模型三:WSAEventSelect模型四:Overlapped I/O 事件通知模型五:Overlapped I/O 完成例程模型六:IOCP模型老陈有一个在外地工作的女儿,不能经常回来,老陈和她通过信件联系。他们的信会被邮递员投递到他们的信箱里。这和Socket模型非常类似。下面我就
2012-08-22 14:43:15 3885 1
原创 【C/C++学习】之八、虚函数与纯虚函数
virtual 面向对象,他的多态性是如何体现的呢 那就要看我们的虚函数了, 我们的虚函数是我们在基类里面声明了一些能够在各个派生类里面重新定义的函数。编译器和装载程序能够保证对象和应用于他们的函数之间的正确的对应关系。C++中,虚函数起了很大的作用,类中至少有一个虚函数的时候,类就会构造出一个虚函数表来指示这些函数的地址,假如继承该类的子类定义并实现了
2012-08-19 19:32:48 1442
原创 【VC++积累】之三、操作注册表
注册表是我们操作系统的一个数据库,它的结构同逻辑磁盘类似。 相信大家都用过了。 他有键,值!上图就是我们计算机中的注册表!现在我们来看API函数1、打开关闭注册表LONG WINAPI RegCreateKeyEx( _In_ HKEY hKey, //指定父键的句柄 _In_ LPCTSTR lpSubKey,
2012-08-19 15:29:24 1719 4
原创 【网络编程】之四、socket网络编程例解
前面说了那么多,现在我们给出4个代码+详解,基于win32平台的socket编程。使用TCP 和 UDP 两种协议。OK,先来看一下TCP服务器和客户端:/**************************************************文件名server.cppwindows下socket网络编程实例 -- 服务器端基于TCP服务器地址:'127.
2012-08-15 15:12:51 8782 2
原创 【网络编程】之三、socket网络编程
前面两篇看socket的入门一些知识还有一些常用的API,现在来解释一些概念,还有就是tcp和udp客户端服务器基本模式!阻塞和非阻塞套接字可以处于阻塞模式或者非阻塞模式,调用任何一个阻塞模式的函数都会产生同样的结果。(用或长或短的时间等待操作的完成) 当套接字处于非阻塞模式的时候,API函数的调用会立即返回,但是大多会失败,返回WSAEWOULDBLOCK错误。意味着请求
2012-08-15 15:12:09 2147
原创 【网络编程】之二、socket API学习
套接字API函数:1、socket函数:The socket function creates a socket that is bound to a specific transport service provider.2、bind函数:The bind function associates a local address with a socket.(一般用于服务器)
2012-08-15 11:47:51 2634 1
原创 【网络编程】之一、初识WinSocket
Winsock是Windows下的网络编程接口,它是由Unix下的BSD Socket发展而来,是一个与网络协议无关的编程接口。 Winsock在常见的Windows平台上有两个主要的版本,即Winsock1和Winsock2。编写与Winsock1兼容的程序你需要引用头文件WINSOCK.H,如果编写使用Winsock2的程序,则需要引用WINSOCK2.H此外还有一个MSWSOCK.H头
2012-08-14 20:22:53 4087 4
原创 【啊哈!算法】之五、归并排序
归并排序是利用"归并"技术来进行排序。归并是指将若干个已排序的子文件合并成一个有序的文件。这是采用分治算法的一个典型的应用!这里要讲两种:两路归并排序,归并排序~!归并排序是一种稳定的排序算法;他用顺序存储结构。也易于在链表上实现。算法复杂度: 比较操作的次数介于和。 赋值操作的次数是。最优时间复杂度O(n),最差时间复杂度O(nlogn),平均
2012-08-14 12:32:47 2507
原创 【IOS学习】之二、虚拟机MAC Lion 10.7 下问题集锦和xcode的安装
由于本人也是刚刚装好,先来说一下xcode吧,mac最新版本是10.8.1 现在只面向开发者, 我们装的是10.7所以不支持最新版本的xcode,他最高支持到xcode4.2,OK,我传一个种子给大家是xcode4.2+IOS5.0的编译器!xcode下载我开始安装的是xcode3.2.2, 大家可以去网上下载,我这里没有种子了,过一段时间我把它上传到网盘给大家下载吧!
2012-08-12 19:51:18 2638
原创 【C/C++学习】之五、dynamic_cast
dynamic_cast (expression)可以安全的将类的指针或者引用沿着他们的继承层次转换! 但是指针必须有效,必须为0(可以对值为0的指针应用dynamic_cast,结果仍然是0)或者指向一个对象! 他只接受基于类对象的指针和引用的类型转换!在类层次上进行转换的时候 dynamic_cast于static_cast的效果一样!他返回一个新类型的值,或者会抛出一
2012-08-10 20:40:24 4430
原创 【IOS学习】之一、VM8下安装mac lion10.7 黑苹果之续
接上篇文章我们继续来看:进入安装界面选择语言我们必须先抹掉磁盘然后进行装系统ok 重新开始安装安装完成 进行设置到这里就全部完成了,我们的mac 在虚拟机下跑起来了, 哈哈 看起来不错吧, 得了,还差一步了,那就是
2012-08-09 20:06:59 4408 9
原创 【IOS学习】之一、VM8下安装mac lion10.7 黑苹果
大家都知道,开发ios软件我们要用mac电脑,但是好贵啊,说实话买不起啊!没办法,只能用黑苹果了,本篇文章介绍的是如何在vm8下安装mac os! 1、先来说说工具吧, 首先我们要有的就是vm8 这款虚拟机软件了,当然你也可以下载汉化包!这里我给个连接大家自己去下载吧:右键点我下载 这个是vm8的汉化版本 接下来给大家看的是不定了:csdn资源 进入这个页面去下载吧!
2012-08-09 20:00:12 5912 1
原创 【啊哈!算法】之四、选择排序
选择排序的基本思想是:每一趟从待排序的数据中选出最小元素,顺序放在已排好序的数据最后,直到全部数据排序完毕。选择排序包括:简单选择排序,堆排序~!一、简单选择排序简单选择排序时一种不稳定的算法,他的时间复杂度是:O(n^2),空间复杂度就需要一个中间单元A【0】的空间!来根据图看一下排序的过程!根据图大家应该能看出来,算法的思想是:对于这一组数据,如上面的待
2012-08-08 14:33:21 1064 1
原创 【python学习】之五、可调用对象
在python中有四种可调用对象:函数,方法,类,类的实例1、函数(1)内建函数(BIF Built-in Function): 用C/C++来写的,在__bulitin__模块里,并作为__builtin__模块导入到解释器中去!>>> dir(type)['__abstractmethods__', '__base__', '__ba
2012-08-07 17:55:09 1601
原创 【C/C++学习】之六、reinterpret_cast
reinterpret_cast (expression)reinterpret_cast是强制类型转换符!他是用来处理无关类型转换的,通常为操作数的位模式提供较低层次的重新解释!但是他仅仅是重新解释了给出的对象的比特模型,并没有进行二进制的转换!他是用在任意的指针之间的转换,引用之间的转换,指针和足够大的int型之间的转换,整数到指针的转换,在家面的文章中将给出!
2012-08-07 15:25:58 13940 1
原创 win7 X64 下使用debug
win7 X64 悲剧啊,居然没有提供debug! 调个东西还得用虚拟机~蛋疼啊!下面是X64下debug的图: 不过 不过~在下找到了一个好东西,可以模拟出来,这个软件就是DOSBOX~~OK,有了这个软件你还要一个东东就是debug这个可执行文件~附件里面附送!进入dosbox后,要输入几条命令才可进入debug模式:看图:(我把
2012-08-05 20:30:56 4679 7
原创 【VC++积累】之二、黑客编程之提权SDK
提权啊。。。。1要打开当前进程的权限令牌。。。。。。。2要获取权限标识。。。。。。。3要提升令牌权限。。。。。。。。。。。。3个API函数搞定分别是: OpenProcessToken(); LookupPrivilegeValue(); AdjustTokenPrivileges(); BO
2012-08-05 18:15:46 4079 3
原创 【VC++积累】之一、搜索内存
搜索到内存然后修改它,就像金山游侠游戏修改器。BOOL FindFirst(DWORD dwValue);BOOL FindNext(DWORD dwValue);DWORD g_arList[1024];int g_nListCnt;HANDLE g_hProcess;FindFirst进行第一次搜索,然后将搜索到的地址保存在g_arList中,地址的个数记录在g_n
2012-08-05 16:10:15 4399 1
原创 悬挂else
在C语言中可以看到这样一种形式的代码:if (a > 0) if (b > 0) printf("~~~~~");else printf("!!!!!!!!!");问题就出来了,这个else 到底是和那个if搭配?也许在这里容易发现,但是 如果是大块的代码嵌入到了类似这样的框架中,那么寻找起来是很麻烦的! 其
2012-08-05 15:45:44 4814 3
原创 【C/C++学习】之四、static_cast
用法:static_cast ( expression ) 《C++primer 第四版》中说编译器隐式执行的任何类型转换都可以由static_cast显式完成!要注意的是,此转换没有运行时检测安全!他不能转换掉expression的const、volatile、或者__unaligned属性。他也不是用来去掉static属性的! 大家应该清楚stat
2012-08-05 13:02:43 19466 1
原创 【C/C++学习】之三、const_cast
用法:const_cast (expression)此运算符是用来消除类型的const和volatile属性的。看到const_cast的你应该知道,他是用来转换掉表达式的const性质的。对也,只有使用我们的const_cast才能将const性质转换掉!ok,我们来看一段代码: const char m = 't'; const
2012-08-04 14:45:15 5257 2
原创 【C/C++学习】之二、static_cast和dynamic_cast、reinterpret_cast
C++提供了四个转换运算符:const_cast (expression)static_cast (expression)reinterpret_cast (expression)dynamic_cast (expression)dynamic_cast: 通常在基类和派生类之间转换时使用; static_cast: 一般的转换,如果你不知
2012-08-03 18:39:04 2698
原创 【python学习】之四、面向对象之续
作者:jofranks 原创作品,转载请标明出处!版权所有,侵权必究!来源:http://blog.csdn.net/jofranks一、组合和派生我们创建类,我们要把他当成一个模块来使用它,并且能和其他数据类型及逻辑执行流混合使用! 我们现在又两种方法来在代码中利用类: 1、组合 2、派生组合:就是让不同的类混合并加
2012-08-03 16:20:59 995
原创 【啊哈!算法】之三、交换排序
作者:jofranks 原创作品,转载请标明出处!版权所有,侵权必究!来源:http://blog.csdn.net/jofranks交换排序的基本思想是:两两比较待排序的数据,发现两个数据的次序相反则进行交换,直到没有反序的数据为止。本文交换排序有:冒泡排序,快速排序~!一、冒泡排序冒泡排序是一种稳定的排序算法,他的时间复杂度是O(n^2) 当然,当
2012-08-02 15:41:49 1265 2
go程序设计语言(人民邮电+机械工业2本)
2018-02-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人