摘要:1. 设置软件断点,运行到目标位置启动调试器 方法①:使用汇编指令(注:x64 c++不支持嵌入汇编) _asm int 3 方法②:编译器提供的方法 __debugbreak(); 方法③:使用windows API DebugBreak(); WerFault.exe进程(Windows Err
阅读全文
摘要:空指令 nop #90 软件断点 int 3 #CC // 调试状态会断住程序;非调试状态会抛出SEH异常 压栈 push ebp #55 // 将ebp压栈(esp-=4) push edi #57 // 将edi压栈(esp-=4) 弹栈 pop ecx // 将栈顶的4个字节弹出,并放在ecx
阅读全文
摘要:总体特征 (1)大小写不敏感。关键字、宏、变量名、函数名以及类名不区分大小写;变量名可以与关键字同名 (2)局部变量、成员变量未初始化时,会被编译器初始化 (3)没有全局变量、全局函数,所有东西必须写入类中 (4)一个uc文件中,有且只能写一个类,且文件名与类名要一致 (5)变量和函数默认为publ
阅读全文
摘要:for变量:写在for循环初始语句中的变量。如:for (int i=1,j=2; i<100; i++) vc6的for变量 int i 的作用域: void func(bool condition){ if (condition) { for(int i=0; i<100; i++) { pri
阅读全文
摘要:编译 增量重新编译Debug版本UnrealScript脚本 UDK.exe make -debug 增量重新编译Release版本UnrealScript脚本 UDK.exe make -release 全量重新编译Debug版本UnrealScript脚本 UDK.exe make -debug
阅读全文
摘要:首先,需要让控制台程序的屏幕缓冲区高度>窗口高度(此时窗口右侧会产生滚动条),屏幕缓冲区宽度>窗口宽度(此时窗口下侧会产生滚动条),否则无需滚动窗口。可以通过下列代码来设置控制台屏幕缓冲区大小和窗口大小:// 设置屏幕缓冲区大小(单位:字符数) width: 100 height: 30HANDL...
阅读全文
摘要:重要说明:(1)python使用4个空格进行层次缩进的(不是tab),在eclipse里面可以直接使用tab缩进,是因为eclipse会实时地将tab转成4个空格(2)在eclipse中安装pyDev插件,就可以调试python脚本了(3)如果在python文件中存在中文字符,需要在python文件...
阅读全文
摘要:1. 生成.so动态库 示例一: SoVer = 10010110CfgVer = 10010110 BinName = fnights.soGameName = "\"fnights\""GameID = 100 BIN = $(BinName).$(SoVer) all: clean compi
阅读全文
摘要:blender源码路径(svn):https://svn.blender.org/svnroot/bf-blender/trunk/blender/依赖外部Lib(svn):https://svn.blender.org/svnroot/bf-blender/trunk/lib/注意:svn只托管了...
阅读全文
摘要:如下代码(支持windows与Linux)会以【16进制】【每行16字节】打印出一块内存的内容:void PrintBuffer(void* pBuff, unsigned int nLen){ if (NULL == pBuff || 0 == nLen) { retur...
阅读全文
摘要:static_cast 1. 基础类型之间互转。如:float转成int、int转成unsigned int等 2. 指针与void*之间互转。如:float*转成void*、CBase*转成void*、函数指针转成void*、void*转成CBase*等 3. 派生类指针【引用】转成基类指针【引用
阅读全文
摘要:getopt()是libc的标准函数,很多语言中都能找到它的移植版本。// -b -p "c:\input" -o "e:\test\output"bool bBinary = false;char szPath[MAX_PATH] = {0};char szOput[MAX_PATH] = {0};int c = 0;while ((c = getopt(argc, argv, "bp:o:")) != -1) { switch (c) { case 'b': bBinary = true; break; case
阅读全文
摘要:Java与C++比较概况 C++Java class Foo { // 声明 Foo 类 public: int x; // 成员变量 Foo(): x(0) { // Foo 的构造函数Constructor for Foo, } // 初始化 x int bar(int i) { // 成员函数
阅读全文
摘要:#if #elif [defined(), !defined()] #else #ifdef #ifndef #endif // 条件编译 /* 头文件防止多次被包含 */ #ifndef ZLIB_H #define ZLIB_H #endif /* ZLIB_H */ /* 用C方式来修饰函数与
阅读全文
摘要:消息分类与消息队列 Windows中,消息使用统一的结构体(MSG)来存放信息,其中message表明消息的具体的类型, 而wParam,lParam是其最灵活的两个变量,为不同的消息类型时,存放数据的含义也不一样。 time表示产生消息的时间,pt表示产生消息时鼠标的位置。 按照类型,Window
阅读全文
摘要:使用svn开发项目时,有时由于某种原因,我们不能及时地向svn上提交东西。 为了防止本地机器硬盘挂掉使这些修改丢掉或者想记录某个时间点的修改,我们有必要对这些修改(Modify,Add状态)进行额外的备份。 下面通过组合几个工具,写了个bat脚本来简化这个过程。整个工具包从这里下载:svnModif
阅读全文
摘要:发布程序时,往往需要升级配置文件的版本号,不得不把一堆的配置文件上传到linux服务器上, 执行一个rename "10012020" "10012021" *,然后再把文件拉下来。实在是太麻烦~ 这个过程将不会再发生了,可以使用renamex(避免与系统的rename重名)来搞定了,可以从这里下载
阅读全文
摘要:1. 如果已经有vc6的dsp工程,可直接导出nmake脚本文件(.mak) “Project - Export Makefile...” nmake -f nMakeTest.mak CFG="nMakeTest - Win32 Debug" nmake -f nMakeTest.mak CFG=
阅读全文
摘要:看看这几个链接,每隔整1个小时,售票系统都会放出一些票。关于调整互联网、电话订票预售期有关事项公告(12306)关于整点放票疑问解答(百度知道)+++++++++++++++++++++++++++++++++++++++++++++码农们在办公室解决问题,常常忘记整点去刷票,错过最佳购票时间,实在是伤不起!!!显然,在这样春运时节,这种错误是不可原谅的。为了解决这一问题,我开发了一个简易的小软件,来强制提醒码农们,“整点到了,赶快去刷刷,有票出来没?”+++++++++++++++++++++++++++++++++++++++++++++以下是软件的界面,十分简洁易用,够萌...-----
阅读全文
摘要:在程序开发中,往往要在程序启动或模块被加载时,需要做一些初始化的工作(例如:资源加载、内存创建、变量初始化或执行函数[脚本]等);而在程序结束或模块被卸载时,需要做一些清理的工作(例如:资源回收、内存释放、状态清理或执行函数[脚本]等)。+++++++++++++++++++++++++++++++++++++首先,我们使用下面例子,来测试下静态全局对象在exe与dll中的构造和析构时机。整个程序结构如下:DllTest.dll动态连接库测试代码: 1 #include "stdafx.h" 2 #include "dllTest.h" 3 #inclu
阅读全文