
C/C++
文章平均质量分 61
tzwh_86
这个作者很懒,什么都没留下…
展开
-
内存分配函数总结- 陈敏的博客- 优快云博客
内存分区:1)、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2)、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。3)、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻转载 2012-11-19 15:38:52 · 521 阅读 · 0 评论 -
WSAAsyncSelect模型
#include #include "WSAInit.h"#define WM_SOCKET (WM_USER + 101) // 自定义消息#define MAX_LEN 1024CWSAInit theSocket;LRESULT CALLBACK WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM l转载 2013-07-04 23:04:56 · 555 阅读 · 0 评论 -
消息机制-WSAAsyncSelect
WSAAsyncSelect基于Windows消息机制异步I/O模型,为特定网络事件指定系统通知信息.函数定义int WSAAsyncSelect(SOCKET s, HWND hWnd, unsigned int wMsg, long lEvent);(1)参数4-1Event:设定用户关心得套接口上的网络事件.形式如:1Event=FD_READ/FD_CLOSE.网络I/O事转载 2013-07-04 22:44:01 · 751 阅读 · 0 评论 -
关键字:Const,Const函数,Const变量,函数后面的Const
看到const 关键字,C++程序员首先想到的可能是const 常量。这可不是良好的条件反射。如果只知道用const 定义常量,那么相当于把火药仅用于制作鞭炮。const 更大的魅力是它可以修饰函数的参数、返回值,甚至函数的定义体。const 是constant 的缩写,“恒定不变”的意思。被const 修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。所以很多C++程序设计书转载 2013-07-31 17:24:04 · 647 阅读 · 0 评论 -
C/C++获取当前系统时间
源地址:http://www.cnblogs.com/mfryf/archive/2012/02/13/2349360.html // 个人觉得第二种还是比较实用的,而且也是最常用的~// 不过当计算算法耗时的时候,不要忘记second,不能只要用Milliseconds来减,不然后出现负值,若是算法耗时太长就得用minutes啦。再不然,就hours……/转载 2013-07-31 11:17:34 · 736 阅读 · 0 评论 -
VC6.0 error LNK2001: unresolved external symbol _main解决办法
学习VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时,编译都已通过。产生连接错误的原因非常多,尤其LNK2001错误,常常使人不明其所以然。如果不深入地学习和理解VC++,要想改正连接错误LNK2001非常困难。 初学者在学习VC++的过程中,遇到的LNK2001错误的错误消息主要为: unre转载 2013-07-31 11:25:22 · 642 阅读 · 0 评论 -
rpcndr.h和wtypes.h冲突Bug的解决方案
rpcndr.h和wtypes.h冲突时,其错误表现如下:C:\program files\microsoft visual studio\vc98\include\rpcndr.h(173) : error C2632: 'char' followed by 'int' is illegalC:\program files\microsoft visual studio\vc98\incl原创 2013-07-26 13:54:24 · 3657 阅读 · 0 评论 -
C++网络库总结
ACE - Adaptive Communication Environment http://www.cs.wustl.edu/~schmidt/ACE.html Common G++ (GNU) Home or Socket Class Reference Socket++ version 1.11 http://www.cs.utexas.edu/users/lavender原创 2013-08-01 20:44:44 · 804 阅读 · 0 评论 -
内存泄漏检测
一、 在 MFC 中检测内存泄漏 假如是用MFC的程序的话,很简单。默认的就有内存泄露检测的功能。 我们用VS2005生成了一个MFC的对话框的程序,发现他可以自动的检测内存泄露。不用我们做任何特殊的操作。 仔细观察,发现在每个CPP文件中,都有下面的代码: #ifdef _DEBUG #define new DEBUG_NEW转载 2013-08-07 22:35:37 · 812 阅读 · 0 评论 -
Windows网络编程细节问题
1. 如果在已经处于 ESTABLISHED状态下的socket(一般由端口号和标志符区分)调用closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket: BOOL bReuseaddr=TRUE; setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof转载 2013-07-04 17:22:03 · 671 阅读 · 0 评论 -
WinSock I/O编程模型之——Select模型
最近,在系统地学习windows网络编程。虽然,已经浏览过select相关代码,查阅过很多书籍和资料,但是自始自终都是一副朦胧的姿态,一知半解,不知所以。为了更好的学习网络编程,决定将多线程和套接字I/O模型这块知识进行彻底的总结一下,书写一些测试代码,将这块堡垒攻下。当然自己不是什么大师,这方面知识相对匮乏,或多获少会存在一些歧义,希望能在不断的学习过程中,总结不足,及时补充。原创 2013-07-04 17:16:39 · 663 阅读 · 0 评论 -
数论C++函数库——NTL库快速上手中文指南(VC)
NTL 数论C++函数库——NTL库快速上手中文指南(VC) NTL库的官方网站地址: http://www.shoup.net/ntl/ 该网站有详细的说明文档,下载下来的压缩包内也有详细的说明文档。 本帖以winxp下的VC 6.0为例说明NTL的使用方法。 1、我们将压缩包下载下来(不到1M,很快吧)转载 2013-07-18 19:43:01 · 22151 阅读 · 0 评论 -
128-bit整数定义
//头文件 #define Unit__int128H #include class __int128 {//实现的是无符号的__int128 private: unsigned long val[4]; int HexToInt(char hex) {转载 2012-11-19 15:41:53 · 2089 阅读 · 0 评论 -
error LNK2038: XXXXX 不匹配的原因
MSDN官网的解释,内容全英文:http://msdn.microsoft.com/en-us/library/ee956429.aspx VC编译器在编译时,会把对象的name和value作为一条记录保存起来。在连接时,连接器会检查这些记录是否匹配。 语法是:#pragma detect_mismatch( "name", "value"))注意:翻译 2013-06-17 16:55:09 · 1101 阅读 · 0 评论 -
c++资源
开发工具:VIM 骨灰级玩家专属emacs 骨灰级玩家专属code::blocks 入门级推荐codelite 入门级首选eclipse+CDT 如果你经常用eclipse就直接装个cdt的插件吧netbeans 习惯netbeans的首选anjuta gtk首选KDeveloper 曾经的Linux下经典开发工具Xcode Mac系开发首选QtCreator Q转载 2013-06-17 18:36:21 · 836 阅读 · 0 评论 -
空字符串初始化的方法及区别
转自: http://www.cnblogs.com/yitongtianxia59/archive/2009/07/22/1528620.html(1)NULL null 关键字是表示不引用任何对象的空引用的文字值。 null 是引用类型变量的默认值。那么也只有引用型的变量可以为NULL,如果 int i=null,的话,是不可以的,因为Int转载 2013-06-18 12:47:10 · 917 阅读 · 0 评论 -
windows环境下Socket编程的几种模式
windows环境下Socket编程的几种模式ü 阻塞模式 这个模型是讲解计算机网络时被作为例子介绍的,也是最简单的。其基本原理是:首先建立一个socket连接,然后对其进行操作,比如,从该socket读数据。因为网络传输是要一定的时间的,即使网络通畅的情况下,接受数据的操作也要花费时间。对于一个简单的单线程程序,接收数据的过程是无法处理其他操作转载 2013-07-07 11:39:18 · 754 阅读 · 0 评论 -
IOCP以及扩展Windows socket函数应用示例
#include #include #include #include //微软扩展的类库using namespace std;#define SEND 0#define RECV 1#define ACCEPT 2#define DATA_LENGTH 1000//单句柄数据定义typedef struct _PER_HANDLE_DATA{SOCKET转载 2013-07-07 11:49:02 · 738 阅读 · 0 评论 -
VC++动态链接库(DLL)编程深入浅出(zz)
源文件地址:http://www.cnblogs.com/chio/archive/2007/11/03/948480.html1.概论 先来阐述一下DLL(Dynamic Linkable Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。 静态链接库与动态转载 2013-07-13 17:26:52 · 946 阅读 · 0 评论 -
C/C++内存泄漏及检测
“该死系统存在内存泄漏问题”,项目中由于各方面因素,总是有人抱怨存在内存泄漏,系统长时间运行之后,可用内存越来越少,甚至导致了某些服务失败。内存泄漏是最难发现的常见错误之一,因为除非用完内存或调用malloc失败,否则都不会导致任何问题。实际上,使用C/C++这类没有垃圾回收机制的语言时,你很多时间都花在处理如何正确释放内存上。如果程序运行时间足够长,如后台进程运行在服务器上,只要服务器不宕机就一转载 2013-07-16 20:12:07 · 550 阅读 · 0 评论 -
用VS做汇编开发环境的方法
汇编编译器测试看到大侠们不用引入表得到了函数地址,我也想试试,可是不想装其他的开发环境,我只熟悉VS,所以打算用vs2005来实验下汇编开发,经过几次调试,发现经过下面两步操作后,可以做到vs生成的结果和汇编环境生成的结果在逻辑上是一致的。1.改入口点 /Entry:main ,不让我们的程序由CRT启动,而是由Kernel32.dll启动 2.给main函数增加 __de转载 2013-08-24 21:57:29 · 1298 阅读 · 0 评论