自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 【C++】优先级队列

堆在C++中,优先级队列(Priority Queue)是一种特殊的容器适配器,它提供了一个能实现类似堆的结构的功能。优先级队列保证了队首元素总是最大的(或者在最小的元素在优先级最高的定义下是最小的),出队操作(front和pop)总是取出具有最高优先级的元素,而入队操作(push)会将新元素插入到正确的位置以保持优先级顺序。这种顺序是通过堆这种数据结构来实现的。

2024-06-18 17:11:56 358

原创 【C++】泛型编程与模板

C++ 模板(Template)是 C++ 语言提供的一种泛型编程机制,允许编写独立于具体数据类型的代码。模板可以用于函数和类,分别称为函数模板和类模板。

2024-04-12 11:33:27 730

原创 【C/C++内存管理】关于 new / delete 和 malloc / free

new。

2024-04-12 11:32:29 620

原创 【C++类和对象】初始化列表

虽然上述构造函数调用之后,对象中已经有了一个初始值,但是不能将其称为对对象中成员变量的初始化,,而不能称作初始化。在C++中,初始化列表用于在对象构造过程中为成员变量进行初始化。,而不是在构造函数体内逐个赋值。所以构造函数进行初始化相当于是对已经存在的变量赋初值,而。

2024-04-09 19:05:31 417

原创 【C++】常引用,const权限的放大和缩小

在C++中,常引用(const reference)是一种特殊的引用类型,它允许我们引用一个对象,同时确保这个引用不会修改所引用的对象。在C++中,const 权限的放大和缩小是指将一个的过程。然而,C++的类型系统不允许权限放大,即不允许将一个常量对象或常量引用转换为非常量引用,因为这可能会导致常量对象被非预期地修改。但是,权限缩小这里仅仅是数值的拷贝,不存在权限的放大缩小平移。这样的代码看起来没有什么问题,像是权限的缩小,但其实这里发生了隐式类型转换。

2024-04-08 19:50:09 286 1

原创 【C++ 类和对象】6个默认成员函数

注意:无参构造函数全缺省构造函数、我们没写编译器默认生成的构造函数,都可以认为是默认构造函数,并且只能有一个。

2024-04-01 16:12:09 899

原创 【C++】引用,内联函数

在C++中,,它允许我们使用一个变量来引用另一个变量。引用提供了对变量的间接访问,使我们能够通过引用来操作原始变量的值。鲁迅周树人可以理解是他的一个引用周树人就是鲁迅鲁迅就是周树人,所以对鲁迅的操作就是对周树人的操作。引用的特点必须在声明时初始化一旦引用初始化后,它们的指向是不可改变的。两种不同类型的引用之间,不能进行相互转换。

2024-03-22 19:54:23 505 1

原创 【C++入门】命名空间和函数重载

在C++中,可以使用namespace关键字来定义命名空间。这样声明的命名空间是一个新的作用域。命名空间的定义可以在全局范围内或在其他命名空间中进行。namespace name { //name为自定义部分可以在里面添加如变量,函数定义,类int i;//变量// 函数定义// 类定义特点命名空间可以重名在同一个工程中,可以存在多个名称相同的命名空间,编译器会将它们合成为一个命名空间int i;int a;void fun();同时命名空间还可以嵌套// 外层命名空间的内容。

2024-03-22 11:18:56 332 1

原创 常见的七个排序算法:冒泡,直接插入,希尔,选择,堆,归并,快速排序。

在本文开始前,先给大家推荐一个助于你理解各种排序的网站)里面有各种排序的动画,非常直观。

2024-03-17 18:34:47 801 1

原创 【C数据结构】——树,二叉树,堆

二叉树是一个特殊的树,是n(n >= 0)个结点的有限集合,该集合或者为空集(空二叉树),或者由一个根结点和两颗互不相交,分别称为根结点的左子树和右子树的二叉树组成,它的度最大为2。

2024-03-15 18:33:52 893 1

原创 【C数据结构】——栈和队列

和栈一样,队列也是一种线性表,一种只允许在一端进行插入操作,而在另一端进行删除操作的特殊线性表我们把允许插入的一端称为队尾(rear),允许删除的一端称为队头(front)。队列遵循后进先出FIFO(First In First Out)的原则栈和队列它们都是特殊的线性表,只不过对插入和删除操作做了限制。栈(stack)只允许在表尾进行插入和删除操作。队列(queue)只允许队尾(rear)进行插入操作,而在队头(front)进行删除操作。

2024-03-10 16:49:41 821 2

原创 【C数据结构】——单链表的相关操作,双向链表

链表()是一种物理存储单元上非连续、非顺序的常见的存储结构,用于存储一系列的结(亦可写作 “节” )点。与顺序表不同,链表的每个结点不仅要存储数据元素,还要有指向下一个结点的指针。链表中的结点可以按照次序连接在一起,形成一个链式结构。链表中的第一个结点被称为头结点,最后一个结点被称为尾结点,指向NULL。链表和顺序表的不同链表顺序表存储方式使用不相邻的内存块连续的内存空间插入和删除操作时间复杂度O(1)O(n)是否支持随机访问否是空间占用比较较大较小扩容缩容操作。

2024-03-09 18:17:55 838 1

原创 【C语言】程序的编译和链接

在 ANSI C 的任何一种实现中,存在两个不同的环境,一种是翻译环境,还有一种是运行环境(用于实际运行代码)。这两个环境是先后实现的。1,翻译环境是什么" 通常指的是计算机编程中用于将源代码翻译成可执行程序的工作环境。这个环境包括编程语言的编译器或解释器、开发工具、库文件、操作系统等组成部分。在这个环境中,翻译环境由编译和链接两个大的过程组成的,而#include#define#ifdef#ifndef生成一个经过预处理的源代码文件.i将高级语言转化为低级语言然后接下来就是。

2023-10-21 09:53:49 45 4

原创 【C语言】文件和文件操作。

文件和文件操作

2023-10-20 20:59:02 52 1

原创 【C语言】自定义类型:结构体类型

数据类型类型标识符字符型char短整型short整型int长整型long长长整型long long单精度浮点型float双精度浮点型double而在许多情况下,内置的数据类型并不能满足我们的需求。在实际应用中,我们经常需要由不同类型的数据来构成一个整体:比如描述一个人,把他看成一个整体他可以由年龄身高名字, 等数据组成而想要表示这些数据,你可能会想到使用数组,但这是通常是行不通的,因为数组里面存放的都是相同类型的数据,而这些数据都拥有不同的类型,年龄可以是整形身高。

2023-10-16 20:38:44 61 1

原创 【C语言】数据在内存中的存储

是一种字符型,但它也具有整数的属性,char 类型的值是一个只有8位的整数,通常在0到255的范围内,可以表示各种字符,如字母、数字和符号。,就是说这个数存放在内存中的时候,高位字节在前,低位字节在后,也就是说,低位字节序的内容存放到高地址中,高位字节序的地址存放到低地址中。个字节,范围在 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 之间。整数在内存中的存储方式主要取决于整数的数据类型和计算机的体系结构,通常它们储存在内存中的基本单位是。

2023-10-14 15:08:53 52 1

原创 【C语言】strcmp,strstr,strerror,memcpy函数的使用

一些字符串函数和内存函数的使用

2023-10-10 19:05:04 351 1

原创 利用C语言实现简单的扫雷

简单的C语言扫雷

2023-10-07 18:07:38 19 1

原创 C语言控制语句:分支和跳转

switch 语句通过对 switch 后面圆括号中的表达式求值,然后程序扫描 case 后面的标签列表,直到发现一个匹配的值为止,然后程序跳转到那一行,若没有与之匹配的标签,如果存在 default : 标签行,就跳转至该行,否则,就继续执行在 switch 后面的语句。不难看出,else if 就是 if else 的变式,逻辑没有发生变化,当然,表达式还可以有更多的 else if (不能超出编译器的限制范围)。与if语句不同,if else 语句可以在两条语句之间做选择。

2023-07-26 18:34:12 43 1

原创 C语言控制语句:循环

C语言控制语句:循环

2023-07-25 19:22:26 37

空空如也

空空如也

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

TA关注的人

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