自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

安全小白,希望我的文章对你有所帮助。

安全小白,希望我的文章对你有所帮助。

  • 博客(57)
  • 收藏
  • 关注

原创 P37-数据存储

void表示空类型(无类型)通常应用于函数的返回类型、函数的参数、指针类型大端(存储)模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中;小端(存储)模式,是指数据的低位保存在内存的低地址中,而数据的高位,,保存在内存的高地址中。

2024-08-13 21:29:49 249

原创 P36-初阶考试讲解

C。

2024-08-12 23:10:48 122

原创 P35算数转换作业讲解

BAD。

2024-08-08 22:12:05 209

原创 4.1 图标资源、光标资源

参数说明返回值。

2024-08-07 21:43:35 743

原创 P34-调试模拟实现字符串相关函数

现在我们编写的my_strcpy和strcpy的区别是返回的类型不同strcpy返回的类型是一个char*,其实返回的就是目标空间的起始地址我们也来模仿实现这个功能。

2024-08-07 20:45:24 282

原创 P33-模拟实现字符串相关函数

或者或者。

2024-08-06 23:39:21 338

原创 3.6 上下文菜单

上下文菜单就是常见的右键菜单(弹出式菜单)。如果用户选择了菜单项,返回所选菜单项的ID。如果未选择菜单项或发生错误,返回0。从上图可以看出,使用WM_RBUTTONUP鼠标右键弹起消息来制作右键菜单是不专业的,当然也有方法将客户区坐标系改为屏幕坐标系,这里我们直接讲更好的消息。

2024-08-06 00:41:37 408

原创 P32调试技巧1、2

第一次被发现的导致计算机错误的飞蛾,也是第一个计算机程序错误Debug通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。

2024-08-05 23:41:48 891

原创 P31结构体初阶 (1)

结构体变量访问成员 结构变量的成员是通过点操作符访问的。点操作符接受两个操作数。

2024-08-03 19:56:28 230

原创 3.5 菜单资源

LoadMenu函数的主要作用是从与应用程序实例关联的可执行文件(.EXE)中加载指定的菜单资源。在主窗口WM_CREATE消息中利用SetMenu函数设置菜单。1.用户从菜单中选择一个命令项。2.控件向其父窗口发送通知消息。3.加速键(快捷键)被转换时。HIWORD - 对于菜单为0。LOWORD - 菜单项的ID。lPARAM - 对于菜单为0。WM_COMMAND消息。

2024-08-03 19:54:29 270

原创 P31结构体初阶

结构体变量访问成员 结构变量的成员是通过点操作符访问的。点操作符接受两个操作数。

2024-08-01 21:15:25 428

原创 P30-指针和数组

指针数组是指针还是数组?

2024-07-31 21:46:05 338

原创 3.4 定时器消息

定时器消息用于在指定的时间间隔内触发事件,通常通过向窗口发送 WM_TIMER 消息来实现。这使得开发者能够在特定的时间间隔内执行任务,如更新界面、处理动画等。WM_TIMER 是 Windows 操作系统中的一个消息,用于处理定时器事件。这个消息通常在指定的时间间隔内发送给一个窗口,以通知该窗口需要执行定时任务。在程序中创建定时器,当到达时间间隔时,定时器会向程序发送一个WM_TIMER消息。定时器的精度是毫秒,但是准确度很低。例如设置时间间隔为1000ms,但是会在非1000毫秒到达消息。

2024-07-31 21:45:17 157

原创 3.3 鼠标消息

滚轮消息:WM_MOUSEWHEEL - 鼠标滚轮消息。

2024-07-30 22:56:17 417

原创 P29指针初阶2

概念:野指针就是指指针指向的位置是不可知的(随机的、不正确的、没有明确限制的)

2024-07-30 21:12:06 185

原创 3.2 键盘消息

附带信息:WPARAM 按键的Virtual KeyLPARAM 按键的参数,例如按下次数。

2024-07-29 22:49:46 901

原创 P28指针初阶1

指针就是变量,用来存放地址的变量。(存放在指针中的值都被当成地址处理)。那这里的问题是︰一个小的单元到底是多大?( 1个字节)如何编址?经过仔细的计算和权衡我们发现一个字节给一个对应的地址是比较合适的。对于32位的机器,假设有32根地址线,那么假设每根地址线在寻址的是产生一个电信号正电/负电(1或者0)那么32根地址线产生的地址就会是︰这里就有2的32次方个地址。每个地址标识一个字节,那我们就可以给(232Byte232/1024KB。

2024-07-29 20:50:42 317

原创 3.1消息队列

InvalidateRect函数是Windows编程中的一个重要函数,用于标记窗口的某个区域为“无效”,从而触发重新绘制该区域。消息发送后,首先放入系统队列,再由系统转发到进程队列,然后通过消息循环,从队列当中获取。消息发送后,首先查找消息接收窗口的窗口处理函数,直接调用处理函数,完成消息。WM_QUIT消息是极少数必须进队列的消息,否则程序无法结束进程。非队列消息:消息的发送和获取,是直接调用消息的窗口处理完成。队列消息:消息的发送和获取,都是通过消息队列完成。GetMessage:从队列中获取消息。

2024-07-28 22:11:27 1025

原创 P27数组定义初始化作业讲解

C 多个\0。

2024-07-28 20:05:24 394

原创 P26-P76结尾数组作业讲解

C 数组初始化只能使用{ }不能使用( )( )括起来就变成逗号表达式了。

2024-07-28 20:03:21 442

原创 2.5 消息循环的原理

在我们看来,系统中无时无刻不存在消息,但是因为CPU的处理速度非常快,当遇到没有消息时,我们的程序就会经常阻塞。就像上面一样,我们这样写消息循环,效率极低,为了提高效率就有了PeekMessage。

2024-07-25 22:35:38 936

原创 25-操作符详解

::info。

2024-07-25 20:35:11 679

原创 2.4 常见消息

1.释放窗口占用的资源,如内存、GDI 对象等。2.保存应用程序的状态数据,例如用户设置、文档等。3.取消定时器、关闭网络连接等。4.发送 WM_QUIT 消息,通知消息循环程序退出。

2024-07-24 00:27:31 1010

原创 24-扫雷游戏

任何时候写代码都是边写边测,写完一个功能就运行看一下这个功能可不可以正常使用,然后再继续进行下一个功能的编写写完菜单,我们运行看一下,可以看到是没有任何问题的游戏开始之前需要:1.布置雷2.排查雷利用9*9的二维数组设置棋盘如何实现布置雷呢?雷 - 1不是雷 - 0但是这样会有歧义,当一个坐标周围正好只有一个雷时,那这里的1具体是表示的周围有一个雷还是这个就是雷呢?那为了避免这种情况干脆用表示雷,表示不是雷好了这样也有两个缺陷。

2024-07-23 20:27:20 375

原创 2.3 消息基础

就是显示窗口图像,不做过多赘述。

2024-07-22 23:32:42 804

原创 23-三子棋

现在我们就定义好了初始化棋盘的函数以及打印棋盘的函数,我们打印出来看一下。但是这个时候还缺少判读输赢的代码,因为在下棋的过程中可能某一方下完就赢了。其中涉及到的判断棋盘满没满的IsFull函数具体细节如下。3的棋盘,那我们改为10,又会打印出什么样的棋盘呢?那么判断输赢的函数就需要能分辨出这四种状态。变量是为了后续方便修改棋盘的大小,此时。多数情况一个项目是由多个人共同完成的。判断胜负函数IsWin具体的细节如下。然后就是玩家下棋的函数的编写。都为3,也成功打印出来3。然后是电脑下棋的函数。

2024-07-22 21:37:14 289

原创 23-数组作为函数参数

将 9 8 7 6 5 4 3 2 1 0 按升序排列思路:先两两相邻的比较,最终结果会将最大的9挪到最右边然后继续相邻的元素进行比较交换以此往复10个数组 - 9趟n n-110个数字就有9对比较9个数组就有8对比较以此类推进行调试排查。

2024-07-22 21:36:23 287

原创 22-二维数组

因为在内存中是连续存放的,所以只要知道第一个就能很容易找到后续的,如果乱放的就找不到了。二维数组中的元素也是通过使用下标(即数组的行索引和列索引)来访问的。还有这种情况,一行一行的给它值。

2024-07-21 14:20:53 252

原创 21-一维数组

1.数组是使用下标来访问的,下标从0开始2.数组的大小可以通过计算得到1.一维数组在内存中是连续存放的2.随着数组下标的增长,地址是由低到高变化的因为在内存中是连续存放的,所以只要知道第一个就能很容易找到后续的,如果乱放的就找不到了。

2024-07-21 14:20:21 286

原创 2.2 窗口创建

首先了解一下创建窗口的API,CreateWindow以及CreateWindowEx。CreateWindow函数是Windows API中一个非常重要的函数,用于创建一个新的窗口。该函数返回一个HWND类型的值,代表新创建窗口的句柄。如果创建失败,返回NULL。CreateWindowEx与CreateWindow函数相比只是增加了更多的窗口样式选项。

2024-07-19 21:09:18 773

原创 20-P55函数作业讲解2

写一个递归函数Digitsum(n),输入一个非负整数,返回组成它的数字之和例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19。编写一个函数实现n的k次方,使用递H实现。输入:1729,输出 : 19。

2024-07-19 19:54:15 117

原创 19-P53函数作业讲解1

A.函数的定义必须放在函数的使用之前B.函数必须保证先声明后使用C.函数定义在使用之后,也可以不声明D.函数的声明就是说明函数是怎么实现的。

2024-07-19 19:53:44 788

原创 2.1 注册窗口类

它定义了窗口的基本结构和功能,包括以下几个方面:1.窗口的基本属性:2.窗口的外观:3.窗口的交互行为:4.窗口的事件处理:系统已经定义好的窗口类,所有应用程序都可以直接使用。由用户自己定义,当前应用程序所有模块都可以使用。由用户自己定义,当前应用程序中本模块可以使用,不需要注册,直接使用窗口类即可。系统以及注册好了例如:按钮 - BUTTON编辑框 - EDIT新建一个WinSys项目,修改字符编码为”多字节字符集“,子系统设置为"窗口"然后将之前的WinBase项目的内容copy过来这就是直

2024-07-18 01:36:01 648

原创 18-函数

自定义函数和库函数一样,有函数名,返回值类型和函数参数。但是不一样的是这些都是我们自己来设计。这给程序员一个很大的发挥空间。1.告诉编译器有一个函数叫什么,参数是什么,返回类型是什么。但是具体是不是存在,无关紧要。2.函数的声明一般出现在函数的使用之前。要满足先声明后使用。3.函数的声明一般要放在头文件中的。函数的定义是指函数的具体实现,交代函数的功能实现程序调用自身的编程技巧称为递归(recursion )。递归做为一种算法在程序设计语言中广泛应用。

2024-07-18 00:22:46 1149

原创 17-goto语句

但是某些场合下goto语句还是用得着的,最常见的用法就是终止程序在某些深度嵌套的结构的处理过程,例如一次跳出两层或多层循环。从理论上goto语句是没有必要的,实践中没有goto语句也可以很容易的写出代码。这种情况使用break是达不到目的的。它只能从最内层循环退出到上一层的循环。C语言中提供了可以随意滥用的goto语句和标记跳转的标号。goto语句只能在一个函数范围内跳转,不能跨函数。这里的goto语句不好,怎么写可以不用它呢?识别不到别的函数的goto语句。

2024-07-18 00:20:46 216

原创 16-P38分支循环作业讲解

通过F10可以看的跟只直观在if(i = 5)时,i的值为0过了printf后,i的值为5,屏幕上也打印了一个5然后循环再上来,i++以后i的值变成6然后再走,经过赋值,i变为5然后一直就是这个过程。

2024-07-18 00:20:15 198

原创 Windows下API_HASH

学习api hashing时的笔记

2024-07-17 00:58:19 796

原创 1.4 字符编码

因为当字符集为“使用Unicode字符集”时,编译器在编译处理这段代码时会增加一个UNICODE的宏,编译器帮我们添加了UNICODE宏的定义。,如果使用了“使用Unicode字符集”这个字符集,相当于都视为宽字符处理,在传参时必须在这些类型前添加"L",会比较麻烦,所有这里没有使用。wchar_t实际是unsigned short类型,定义时,需要增加“L”,告诉编译器按照双字节编译字符串,采用UNICODE编码。windows中的UNICODE一般指的是UTF-16,linux中一般指的是UTF-8。

2024-07-17 00:22:24 965

原创 15-循环语句

循环结构。

2024-07-16 20:39:58 1025

原创 14-分支语句

分号隔开的1+2;

2024-07-16 20:39:16 234

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除