会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
zhugehq
博客园
首页
新随笔
联系
订阅
管理
2020年10月21日
MFC单文档模式中,四个类对消息处理的优先级
摘要: MFC的单文档架构,有四个类(这里忽略About对话框类): MainFrame App Doc View 这四个类和MVC设计模式的关系如下: MainFrame代表着MVC的C (Control)。 App可以理解为对hInstance的封装。 Doc对应着MVC的M (Model)。 View
阅读全文
posted @ 2020-10-21 22:37 zhugehq
阅读(561)
评论(0)
推荐(0)
2017年3月15日
字符串常量区读写属性强制修改为可写
摘要: 常见的0xC0000005错误,往往是程序尝试对不可写内存区域写入数据导致的,这是使用指针的时候的常见错误。不过字符串常量区(也叫数据区,确切的说,字符串常量区是数据区的一部分)、代码区、堆、栈都是系统临时分配的一段内存而已,他们本质上没有区别。通过修改PE文件,我们可以修改对应内存的读写属性,从而
阅读全文
posted @ 2017-03-15 19:12 zhugehq
阅读(2399)
评论(0)
推荐(0)
2017年3月1日
单机游戏存档修改
摘要: 背景介绍:游戏是仙剑一,剧情在打苗疆三人组之前,目的是修改李逍遥属性从而可以秒杀苗疆三人组的头领。 进入原始存档(存档文件名为1.rpg,位于游戏根目录下),查看李逍遥原始属性,如下图所示: 去后山打怪升级。打了一组树怪后,李逍遥属性升级,如下图所示: 存一个新档(存档文件名为2.rpg)。为了尽量
阅读全文
posted @ 2017-03-01 20:26 zhugehq
阅读(2672)
评论(0)
推荐(0)
2017年2月26日
C语言面试易错点:负数整形的除法和取余
摘要: C语言整形的除法的结果需要取整,例如 。C语言中的取整方式是向零取整。 取整风格共有3种: 1. 向零取整。即向坐标轴0的方向,取最近的整数。 2. 向上取整。也就是向+∞取整,即取不小于结果的最小整数。 3. 向下取整。也就是向 ∞取整,即取不大于结果的最大整数。 所以,C语言中计算 5除以3,因
阅读全文
posted @ 2017-02-26 22:26 zhugehq
阅读(11630)
评论(0)
推荐(0)
2016年10月14日
C++中的函数名称粉碎机制和它的逆向应用
摘要: 1.名称粉碎机制的由来 在C语言的语法中,函数名称是一个函数的唯一标识,如果一个文件内含有两个名称相同的函数,编译器就会报“函数已有主体”的错误;在多个文件链接时,如果发现有两个名称相同的函数,链接器就会报“符号重定义”的错误。 具有多态特性的C++支持函数的重载,函数不再以函数名称作为唯一标识。只
阅读全文
posted @ 2016-10-14 10:21 zhugehq
阅读(4134)
评论(4)
推荐(3)
2016年10月12日
C++中const关键字的功能总结
摘要: C++语言是C语言的升级版,它支持更多的语法形式,用起来更加方便,功能也更加强大。本文尝试分析C+\+中针对const关键字进行的改进。 在C语言中,const关键字仅用于修饰指针类型的变量,最常见的例子就是strcpy函数了: 。这里const的作用是防止指针所指的内容(源字符串)在函数内被改变。
阅读全文
posted @ 2016-10-12 11:55 zhugehq
阅读(1280)
评论(0)
推荐(0)
探究printf函数对单精度浮点数的处理
摘要: 问题起源自一道编程题:“用cout输出类似printf("%d", 浮点数)格式化浮点为整形的方式”。这道题目的要求,是用C++里cout的方式实现C语言中printf的功能,看似平淡无奇,其实大有深意,因为这里面隐藏了printf函数的一个内幕。 1. 疑问初现 在C语言中,把浮点数格式化为整形输
阅读全文
posted @ 2016-10-12 08:40 zhugehq
阅读(1962)
评论(0)
推荐(2)
利用共用体和位段获得IEEE标准编码的浮点型数据各部分数值
摘要: 前面《浮点型数据(float, double)存储IEEE标准解析和应用》(http://www.cnblogs.com/zhugehq/p/5918599.html) 一文说明了IEEE标准中浮点型数据的编码方式。本文将利用共用体和位段的知识,直接在程序中打印出浮点型数据被编码后的数值。 首先来看
阅读全文
posted @ 2016-10-12 00:22 zhugehq
阅读(905)
评论(0)
推荐(0)
2016年10月10日
C++中使用switch..case语句的易出错陷阱和规避方法
摘要: C++作为C语言的升级版,支持很多C语言不支持的语法。例如,函数中的局部变量不必在函数的最开始统一定义了,在函数内部随时定义新的局部变量成为可能。 比如下面的示例代码,在for循环的初始条件中定义了用于计数的整形变量i,这是不符合C语言语法规定的,故而无法通过C语言编译器的编译。 c++ int f
阅读全文
posted @ 2016-10-10 23:25 zhugehq
阅读(4849)
评论(0)
推荐(0)
2016年9月29日
浮点型数据(float, double)存储IEEE标准解析和应用
摘要: 在C语言中,浮点型变量(也就是带小数位的实数)在内存中的存储方式遵循IEEE标准。 首先来看单精度浮点型float。float占用4字节空间,也就是32位。从左向右数,第1位是符号位(0代表正数,1代表负数),接着是8位指数位,剩下的23位是数据位。如下所示 S EEEEEEEE DDDDDDDDD
阅读全文
posted @ 2016-09-29 08:32 zhugehq
阅读(29440)
评论(0)
推荐(2)
下一页
公告