- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 计算机对负数的表示
问题:-3如何转换成二进制?首先我们将+3转换成二进制,假设是为int类型(32位)的,那么二进制表示为:0000 0000 0000 0000 0000 0000 0000 0011 --这称之为原码:一个整数的绝对值的二进制表示称之为原码。负数转换成二进制分为3步:1、首先将负数转换为对应的原码-3的原
2013-03-06 11:44:15 927
转载 线程同步技术(一)
使线程同步 在程序中使用多线程时,一般很少有多个线程能在其生命期内进行完全独立的操作。更多的情况是一些线程进行某些处理操作,而其他的线程必须对其处理结果进行了解。正常情况下对这种处理结果的了解应当在其处理任务完成后进行。如果不采取适当的措施,其他线程往往会在线程处理任务结束前就去访问处理结果,这就很有可能得到有关处理结果的错误了解。例如,多个线程同时访问同一个全局变量,如果都是读取操
2013-02-04 20:07:03 237
转载 显式加载DLL并使用 DLL 中的类
首先需要强调,当使用某个类时一般目的有二:实例化成对象或者继承它产生新类。对于前者,我们可以构造一个抽象类(java里的接口)来连接调用方和DLL。 抽象类:// Interface.h 公共文件/////////////////////////////////////////////////#pragma once class Interf
2013-02-04 20:05:06 587
转载 CRC原理及其逆向破解方法
介绍: 这篇短文包含CRC原理介绍和其逆向分析方法,很多程序员和破解者不是很清楚了解CRC的工作原理,而且几乎没人知道如何逆向分析它的方法,事实上它是非常有用的.首先,这篇教程教你一般如何计算CRC,你可以将它用在数据代码保护中.第二,主要是介绍如何逆向分析CRC-32,你可以以此来分析程序中的CRC保护(象反病毒编码).当然有很多有效的工具用来对付CRC,但我怀疑它是否会说明原理
2013-02-04 20:04:10 707
转载 c++中RTTI的观念和使用
下面这篇文章虽然有点老,但对C++的RTTI基本原理讲的比较透彻。该文章摘自UMLCHINA网站,是台湾一个群体写的,我根据大家比较熟悉的方式,修改了一些名词的说法,如衍生(派生)等,让大家可以方便的阅读。C++的 RTTI 观念和用途物泽C++应用小组 自从1993年Bjarne Stroustrup 〔注1 〕提出有关C++ 的RTTI功能之建议﹐以及C++的异常处理(e
2013-02-04 20:02:25 379
转载 DLL动态链接库和LIB静态链接库之程序员经验分析
前言:依旧,吐槽,哈哈哈~~~~其实依旧是为公司程序员扫盲,呼,挺想睡觉的其实。言归正传吧。1:神马是Dll和Lib,神马是静态链接和动态链接大家都懂的,DLL就是动态链接库,LIB是静态链接库。DLL其实就是EXE,只不过没main。动态链接是相对于静态链接而言的。所谓静态链接就是把函数或过程直接链接到可执行文件中,成为可执行程序中的一部分,当多个程序调用同样的函数时,内存里就会有这
2013-02-04 20:01:14 355
转载 内存泄漏测试小工具
LeakDiag是一个监测内存泄漏的工具,可以用来精确地找到内存泄露一直到代码行。它使用微软的Detours 技术,拦截指定内存分配的调用并跟踪各种调用栈,并报告已分配但尚未释放的内存,这一信息允许让我们在排除一个内存泄露问题时,能精确查看哪些组件进行了该分配。使用正确的调试符号,我们甚至可以看见请求分配的代码行。关于detours: http://research.microsoft.com
2013-02-04 19:59:15 291
转载 关于Debug和Release之本质区别 .
本文主要包含如下内容:1. Debug 和 Release 编译方式的本质区别2. 哪些情况下 Release 版会出错3. 怎样“调试” Release 版的程序-------------------------------------- 关于Debug和Release之本质区别的讨论 一、Debug 和 Release 编译方式的本质区别
2013-02-04 19:57:32 333
转载 strcpy(非安全性) ,strncpy ,strlcpy(转载) .
一下是使用strcpy_s与strcpy的安全性比较 char szBuf[2] = {0}; strcpy_s(szBuf, 2, "12131"); //新的CRT函数 strcpy(szBuf, "12131"); //老的CRT函数上述代码,明显有缓冲区溢出的问题。 使用strcpy_s函数则会抛出一个异常。而使用strcpy函数的结果则未定,因为它错
2013-02-04 19:56:24 350
转载 内存管理
欢迎进入内存这片雷区。伟大的Bill Gates 曾经失言:640K ought to be enough for everybody — Bill Gates 1981程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本章的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。7.1内存分配方式
2013-02-04 19:55:52 552
原创 Ruby 对Excel的操作
Ruby操作excel文件首先需要在脚本里包含以下语句require 'win32ole'把win32ole包含进来后,就可以通过和windows下的excel api进行交互来对excel文件进行读写了.打开excel文件,对其中的sheet进行访问:excel = WIN32OLE::new('excel.Application')workbook = excel.
2013-02-04 15:20:50 1697
转载 位运算相关
一提起位运算,人们往往想到它的高效性,无论是嵌入式编程还是优化系统的核心代码,适当的运用位运算总是一种迷人的手段,或者当您求职的时候,在代码中写入适当的位运算也会让您的程序增加一丝亮点,最初当我读《编程之美》求“1的数目”时,我才开始觉得位运算是如此之美,后来读到 《Hacker's Delight》,感慨到Henry S.Warren把位运算运用的如此神出鬼没,很多程序都十分精妙,我觉得在一
2012-12-19 17:00:05 308
原创 小问题
1、visual studio 右键转到定义,弹出未定义符号对话框。解决方法:1)、点击保存全部按钮,可能会解决此问题。2)、如果上述方法不行,关闭项目,删除.ncb,.aps,.opt文件,重新打开项目 2、visula studio环境变量问题此时程序中有如下代码(c#):Process process = new Process();process.Start
2012-10-11 14:32:58 394
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人