- 博客(42)
- 收藏
- 关注
原创 [C++模板初阶]函数模板,类模板
class 类模板名// 类内成员定义// 类模版public:_size = 0;// 模版不建议声明和定义分离到两个文件.h 和.cpp会出现链接错误,具体原因后面会讲// 扩容++_size;我们共同进步本系列持续更新,关注我,带你了解更多C++知识下期再见。
2024-08-12 14:39:24
345
原创 [C++内存管理]new,delete,operator new,opreator delete
new/delete会自动调用构造和析构函数类A是我们自定义的一个类型class Apublic:_a = a;delete p2;return 0;其运行结果如下:因为p3申请了三个空间,所以构造和析构函数调用了3次我们共同进步本系列持续更新,关注我,带你了解更多C++知识下期再见。
2024-08-12 12:39:53
901
原创 [C++探索]初始化列表,static成员,友元函数,内部类,匿名对象
我们共同进步本系列持续更新,关注我,带你了解更多C++知识下期再见。
2024-07-29 20:22:11
1126
1
原创 [C++]初识C++(命名空间,命名空间使用,函数重载,缺省参数等)
💖💖💖欢迎来到我的博客,我是anmory💖💖💖又和大家见面了欢迎来到作为一个程序员你不能不掌握的知识先来自我推荐一波欢迎访问推荐阅读。
2024-07-12 19:20:50
596
3
原创 [建堆&堆排序的时间复杂度推导]向上建堆&向下建堆&堆排序的时间复杂度分析推导
这样的二叉树的节点个数为NNN= 2^h-1高度为hlog2Nh=log_2Nhlog2N。
2024-05-20 20:41:11
898
41
原创 [代码比较工具下载及使用]你真的需要一个代码比较工具
很多同学在比较代码的时候都是逐个比较,比较完了也没发现哪里有问题,等自己再次运行就是不通过,于是就再次比较,陷入循环这种情况真的非常难受我就经常这样那么今天就给大家带来几个代码比较工具,让找不同变得轻而易举提供官方下载地址以及网盘下载地址WinMerge是一款专为Windows操作系统设计的免费开源文件比较和合并工具。WinMerge支持多种比较模式,包括文件内容、文件名以及文件日期等。WinMerge不仅限于基本的文件比较,还可以进行文件夹内的所有文件的比较,并且支持导出比较结果。
2024-05-13 11:52:59
458
7
原创 [栈]动画详解数据结构——栈[栈的初始化,销毁,入栈,出栈,判空,读取栈顶元素]
我们共同进步本系列持续更新,关注我,带你手撕面试算法题下期再见。
2024-05-12 18:28:52
481
8
原创 [数据结构]动画详解单链表
/ 定义一个链表结构体// 链表存储的数据// 指向下一个节点的指针💖💖💖更多内容持续更新中💖💖💖请各位多多关注我哦!!我们后会有期。
2024-05-12 14:59:13
1028
18
原创 [Markdown]是时候该学学使用markdown写文章了
最全markdown教程,Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档。Markdown 语言在 2004 由约翰·格鲁伯(英语:John Gruber)创建。Markdown 编写的文档可以导出 HTML 、Word、图像、PDF、Epub 等多种格式的文档。Markdown 编写的文档后缀为 .md, .markdown。本篇博客花了我很长时间一个下午才整理完成的💖💖💖期待你我的共同成长我们下次再见啦!!
2024-05-11 21:47:23
1373
17
原创 数据结构学不会?数据结构可视化网站来了
想要触及光芒,却发现影子越来越长学习之路本身就充满了各种苦难,当你想要追求一门技术的时候,会发现似乎困难越来越多,越来越力不从心,但不要放弃,在追逐光芒的过程中影子会越来越长,但不断努力就能触及到你想要的光芒加油各位程序员!
2024-05-07 21:05:06
620
6
原创 数据结构(01)——链表OJ
要想移除链表的元素,那么只需要将目标节点的前一个节点的next指针指向目标节点下一个节点的next指针但是这里就会出现一个问题,如果头节点是目标值怎么办?此时就有两种思路,一种就是分开讨论,当头节点为目标值时,头节点的next指针指向下一个节点,使下一个节点成为新的头节点另一种就是创建虚拟头节点,这样在删除的时候就可以统一代码风格。
2024-04-29 21:22:08
2760
8
原创 C语言预处理
C语言里的预处理,简单来说就是在真正开始编译你的源代码之前,有个特殊的“预备队”先上场,帮你把原始代码整理得更规整、更适应编译器的要求,同时也让你编程时能更方便、更灵活。这个“预备队”就是预处理器,它干的活儿是在编译流程的最前端单独进行的,比检查语法、理解代码含义那些步骤还要早。在编程实践中,我们时常会遇到一些常数,它们如同程序的脉络一般,贯穿于各个角落,对算法逻辑、数据结构乃至系统行为产生深远影响。
2024-04-02 15:20:12
5075
5
原创 如何使用VS统计自己的代码量?
历经漫漫编程之路,此刻我们不妨回首细数,那已累积的无数行代码,它们如同一串串无声的脚印,记载着我们默默耕耘的点滴时光。每一行代码都是平凡努力的印记,见证了我们的执着与付出,也塑造了今天的我们。然后在查找范围中把文件夹改成自己存放项目的文件夹,文件类型可以有多个,这里由于我目前只写过.c文件,所以就只有一个*.c,这里的*表示可以替换的内容,也就是可以找到任何该文件夹目录下的任何.c后缀的文件,然后我们点击查找全部。下面就教大家如何在VS中统计自己的代码量,非常简单,一学就会。
2024-03-28 07:29:31
5830
4
原创 C语言动态内存管理
也许你从来没有听说过柔性数组(flexible array)这个概念,但是它确实是存在的。C99 中,结构中的最后⼀个元素允许是未知大小的数组,这就叫做『柔性数组』成员。int a[];数组a就是一个柔性数组,因为我们不知道数组a的具体大小是多少C/C++程序内存分配的⼏个区域:1. 栈区(stack):在执⾏函数时,函数内局部变量的存储单元都可以在栈上创建,函数执⾏结束时 这些存储单元⾃动被释放。
2024-03-24 15:18:36
6672
3
原创 C语言自定义类型——结构体详解
结构体是一种数据类型,它可以组合多个值作为成员变量。每个成员变量可以是不同类型的变量,例如标量(单个值)、数组、指针,甚至可以是其他结构体。结构体可以看作是一个容器,用于存储相关数据的集合。每个成员变量可以有自己的数据类型和名称,代表不同的信息。例如,我们可以创建一个名为"学生"的结构体,其中包含姓名(字符串类型)、年龄(整数类型)、成绩(浮点数类型)等成员变量。这样,我们就可以将学生的姓名、年龄和成绩作为一个整体进行管理。在结构体中,每个成员变量可以具有不同的数据类型,这使得结构体非常灵活。
2024-03-20 10:35:01
8320
3
原创 C语言内存操作函数详解
memcpy函数的原型声明如下:这里进行一下详细的解读:1. `void * destination`:这是一个指向目标内存区域的指针,即将接收拷贝内容的地址。2. `const void * source`:这是一个指向源内存区域的常量指针,即需要被拷贝内容的起始地址。3. `size_t num`:这是一个无符号整型变量,表示要拷贝的字节数。这意味着无论源内存区域中存储的是何种类型的数据,都将以字节为单位进行拷贝。
2024-03-17 14:46:56
9135
3
原创 数据在内存中的存储
本文的核心目标在于深度剖析数据在内存中的储存机制,详尽阐述整数与浮点数的内在编码原理,通过对这些基础知识的透彻解读,读者不仅能洞悉计算机内存运作的底层逻辑,更能由此深化对计算机系统核心工作原理的认知,从而全面提升在相关领域内的理论素养和技术能力。通过这一探讨,我们将揭示数据在内存中是如何以二进制形式被有序且高效地组织与存储的,进而展示整数如何依据补码、原码及反码原理进行表示,以及浮点数如何借助IEEE 754标准实施精细化的指数与尾数相结合的存储格式。
2024-03-16 20:10:14
7953
2
原创 C语言字符函数和字符串函数详解
本篇文章分享了C语言的字符函数和字符串函数的使用方法以及如何通过自己的程序来模拟实现这些函数,包括大小写的转换,strlen,strcpy,strcat,strcmp,strncpy,strncat,strncmp,strstr,strtok,strerror等,详细地讲述了字符函数和字符串函数,对于刚学习C语言的小伙伴来说非常友好。
2024-03-16 14:48:00
8061
5
原创 C语言指针最全详解
在日常生活中,当我们置身于一个庞大的小区时,为了便于定位和寻访朋友的住所,我们会为每个房间赋予一个独一无二的编号,如101、201或304等。这些数字就像是房间在小区内的坐标,让来访者能够迅速找到目标位置。同样,在计算机内部的世界里,内存就如同一座座存放数据的“房间”,也需要一种高效的方式来管理和定位它们。当计算机的核心——CPU需要处理数据时,它会在浩瀚的内存空间中进行读取和存储操作。然而,面对如此海量且连续分布的数据单元,逐一查找显然是低效而不可行的。
2024-03-09 10:43:48
8874
8
原创 什么是API?(最详细解读)
在软件开发领域中,API(应用程序编程接口)扮演着关键的中介角色,实现了不同软件组件间的有效互动与协作。举个生活化的例子,假设有两位厨师分别负责制作不同的菜肴,如果每个厨师都需要从基础食材处理做起,那么工作效率将会显著降低。然而,如果他们的厨房设备(如冰箱和烤箱)具备智能API,那么厨师只需按照设备提供的标准指令操作,即可快速获取所需食材或启动预设的烹饪程序,大大简化了工作流程。
2024-01-22 11:00:50
9631
2
原创 函数栈帧的创建和销毁
大家好,我是Anmory,很高兴与大家一同探讨有关函数栈帧的底层逻辑。无论您使用的是何种编程语言,今天的话题都具有普适性,因为它触及到计算机程序运行机制的本质层面,对于深入理解函数调用机制将大有裨益。在日常编写函数的过程中,我们或许会遇到诸多疑问:局部变量究竟是如何在内存中被创建和管理的?为什么未经初始化的局部变量其内容往往呈现随机状态?函数调用时,参数是以何种方式传递的?传递参数遵循什么样的顺序规则?函数形参与实参的具体实例化过程又是怎样的?函数执行完毕后,其返回值是如何安全地回传至调用者处的?
2024-01-01 17:25:04
8447
4
原创 如何用C语言实现简单的扫雷游戏?
如果不满足这个条件则提示坐标非法,如果满足,进入子循环,需要判断这个坐标是不是被排查过,即如果该坐标的值为字符*代表没有被排查,繁殖则为排查过,若没有被排查,进入子循环,判断该坐标是否为雷(即在mine数组中是否为字符1),若是,则提示被炸死,打印mine数组显示雷的位置并跳出循环,若不是,则计算周围雷的个数,用该处的地雷数加上字符0的ASCII值即可判断。在这里我们定义一个函数来初始化,形参中需要有一个char set变量,来自定义初始化界面的元素,否则就要定义两个函数来初始化界面,这样就会让代码冗余。
2023-12-12 08:10:27
7461
原创 C语言的分支与循环
注意此语句需要有break函数,否则会连着下面的case条件一起执行,break指跳出。else只与离他最近的if语句关联,若要与远处的if关联,则需要用大括号表示关系。当条件满足时,回到循环开头执行下一次循环,忽略continue下面的语句不执行。此循环无论条件是否为真都先执行一次do里面的语句,直到判断条件为假跳出循环。跳出当前函数,与if一起用,当条件满足if中的条件时跳出执行。当括号里的条件为真时执行,直到条件为假停止执行。for(初始化,判断,调整)else if(条件)}while(条件)
2023-11-30 07:30:12
7771
2
原创 猜数游戏中的分支与循环
猜数的主体,引入一个随机数,用srand函数以不断变化的时间作为种子,以保证每次生成的随机数都不同,将随机数赋值给ret,共有10次机会,用户输入猜的数字,每输入一个便判断输入数字与ret的大小关系并给出提示,与此同时机会减一次,直至机会用完。此代码首先引入一个菜单函数,输入1为真,开始游戏,输入0为假,结束游戏,while的条件就用输入的0或1来判断是否执行。主函数部分用switch case语句来判断玩家是否开始游戏。
2023-11-30 07:16:01
8182
1
winmerge[代码比较工具]
2024-05-13
meld[代码比较工具]程序员比较文档
2024-05-13
软件工程从win换到mac
2024-07-28
请问各位这个链表操作是删除指定位置的数据(相关搜索:二级指针)
2024-05-11
大学生软件工程专业跟着学校走可以找到好工作吗
2024-05-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人