- 博客(11)
- 资源 (5)
- 收藏
- 关注

原创 如何在linux下检测内存泄漏
1.开发背景在 windows 下使用 VC 编程时,我们通常需要 DEBUG 模式下运行程序,而后调试器将在退出程序时,打印出程序运行过程中在堆上分配而没有释放的内存信息,其中包括代码文件名、行号以及内存大小。该功能是 MFC Framework 提供的内置机制,封装在其类结构体系内部。在 linux 或者 unix 下,我们的 C++ 程序缺乏相应的手段来检测内存信息,而只能使用 to
2012-03-12 21:26:15
6994

原创 局部搜索思想求解八皇后问题
局部搜索思想求解八皇后问题因为以下算法基于局部搜索思想,在此先介绍与其相关的一些概念。局部搜索算法是从爬山算法进化而来。设想我们需以最快的速度(最优解)爬上一座我们事先没有半点信息的大山,那么沿着最陡的方向爬是一不错的选择。这就是局部搜索算法的最基本思想,即在求解问题的过程中始终向着可能最优的方向搜索。描述算法时需用到领域的概念,所谓领域,简单的说即是给定点附近其他点的集合。在距离空间
2012-02-23 20:22:02
5084
原创 掀起你的盖头来——Windows SEH
将浏览器宽度调窄些有利于阅读本文掀起你的盖头来——Windows SEHSEH(Structured Exception Handling)亦即结构化异常处理,是Windows操作系统提供处理程序错误或异常的机制。相应的在C/C++中也提供了__try{}、__except{}、__try{}、__finally{}结构,但这些并不完全是由编译器本身提供的,编译器只不过是将Windows
2012-02-23 20:26:53
4018
原创 『初究VC++2008中缓冲区保护机制』
本文排版环境1366*768,如因考虑不周引起版面不协调还请见谅!『初究VC++2008中缓冲区保护机制』目前,操作系统(Windows、Linux、UNIX)、数据库以及应用软件主要采用c/c++语言开发,但c/c++语言存在一个巨大缺陷——缺乏数组边界检查。因此,这些软件不可避免的存在缓冲区溢出漏洞,成为安全隐患。众所周知,当年风靡的SQL Slammer蠕虫就是利用Microsoft
2012-02-23 20:26:10
1566
原创 Solaris10的CC编译器部分编译选项
-G : 生成动态共享库而不是可执行文件 在有了这个选项的时候,必须指定链接时需要的库,编译器不会链接任何缺省的库 (gcc下面对应的选项是-shared) -g :指示编译器和链接程序准备程序以进行性能分析(以及调试)。 -I : 指定头文件搜索路径-i : 通知链接程序ld忽略任何LD_LIBRARY_PATH设置-instance
2012-02-21 23:17:08
1980
原创 空间圆弧作图算法,基于OpenGL实现!
/////////////////////////////////////////////////////////////////////int CGLBasic::DrawCircle(XPoint ps, XPoint pe, XPoint pc, ColorRGB clr){ const float inc_a=0.001f; // 精度系数 ps.x *= (m_ZoomRa
2011-10-28 00:32:15
2612
2
原创 花了一晚上时间写了个ASN.1语法中TAG值计算工具,有图有源码!!!
1、介绍下ASN.1语法http://download.youkuaiyun.com/detail/nnm2000/9518212、工具功能介绍计算TLV结构中的T,即tag值。3、工具运行效果图:#include using namespace std;typedef enum _tagClass{ UNIVERSAL = 0, APPL
2011-10-26 01:19:06
2615
原创 linux下用vim查看和编辑十六进制文件
用vim -b datafile打开文件,用:%!xxd把二进制文件转换成如下形式:0000000: 1f8b 0808 39d7 173b 0203 7474 002b 4e49 ....9..;..tt.+NI0000010: 4b2c 8660 eb9c ecac
2011-10-15 21:04:35
1034
原创 C++中屏蔽offsetof告警的方法
-Wno-invalid-offsetof (C++ and Objective-C++ only)Suppress warnings from applying the `offsetof' macro to a non-POD type. According to the 1
2011-10-15 20:24:23
2669
原创 C++指针delete是否需要判空
这是个老话题了,大家都知道在C++语言中delete一个空指针是安全的。但今天我想讨论的并不是C++标准是否支持delete空指针的操作。且听我慢慢道来...前几天的检视同事的代码时,发现了一个内存泄露,大体如下:if(NULL != b.p){ a.p
2011-07-31 10:07:40
5238
2
原创 使用PageHeap.EXE或GFlags.EXE检查内存越界错误
<br />必先利其器之一:使用PageHeap.EXE或GFlags.EXE检查内存越界错误<br /> Article last modified on 2002-6-3<br /> ----------------------------------------------------------------<br /> The information in this article applies to:<br /> - Microsoft Visual C++, 32-bit Editio
2011-05-27 20:19:00
1679
Thinking in JAVA (第三版+第四版本)(中英文)
2011-05-18
脱壳的艺术,很好的一个资料
2011-01-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人