自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 sql server数据库 库的操作

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档。

2025-12-24 03:23:23 113

原创 算法 C语言 冒泡排序

冒泡排序的核⼼思想就是:两两相邻的元素进⾏⽐较,元素 小 / 大 就交换,然后进行下一个两两相邻的元素进⾏⽐较,重复以上动作,直到 升序 / 降序。、判断是否已经 升序 / 降序 的flag)外,不需要申请额外的、与数据规模 n 相关的存储空间。冒泡排序的整个排序过程只在原数组内部进行。所以无论数组有多大,这些临时变量的数量都是固定的。:控制排序的“轮数”。当需要排序成升序的数组完全是逆序的时,每一轮都需要进行最大次数的比较和交换。:在每一轮中,对未排序部分的相邻元素进行两两比较,并根据需要交换位置。

2025-12-17 01:09:01 362 1

原创 C语言 操作符(下)

在计算机系统中,数值⼀律⽤补码来表⽰和存储。原因在于,使⽤补码,可以将符号位和数值域统⼀ 处理;同时,加法和减法也可以统⼀处理(CPU只有加法器)此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。那么我们的移位操作符和位操作符都是对数值的二进制补码进行操作的。

2025-12-02 20:42:33 1157

原创 C语言 函数

在C语言的世界里,函数不仅是代码组织的基本单元,更是程序员构建复杂系统的思维工具。从简单的 main()函数到庞大的库函数集合,函数贯穿了C语言的每个角落。重要的是自定义函数。自定义函数和库函数一样,有函数名,返回值类型和函数参数。所谓自定义就是这些都是我们自己来设计。这给我们自己一个很大的发挥空间。ret_type fun_name(形式参数)//ret_type是函数返回类型//fun_name是函数名// ()括号中放的是形式参数//{}括起来的是函数体。

2025-12-01 22:50:29 934

原创 算法 C语言实现—折半查找(二分查找)

折半查找,也称为二分查找,是一种在有序数组中查找特定元素的高效算法。它的基本思想是通过不断将搜索区间减半来快速定位目标元素。

2025-11-11 22:51:09 383

原创 C语言 数组

从输出的结果来看,每⼀⾏内部的每个元素都是相邻的,地址之间相差4个字节,跨⾏位置处的两个元素(如:arr[0][3]和arr[1][0])之间也是差4个字节,所以⼆维数组中的每个元素都是连续存放的。变长数组在内存中的存储方式与普通数组相同,都是连续的。有了下标访问操作符,我们就可以轻松的访问到数组的元素了,⽐如我们访问下标为0的元素,我们就可以使⽤ arr[7] ,想要访问下标是2的元素,就可以使⽤ arr[3]。存放在数组的值被称为数组的元素,数组在创建的时候可以指定数组的⼤⼩和数组的元素类型。

2025-11-11 20:30:33 927

原创 C语言 操作符(中)

文章目录前言一、关系操作符1.1 赋值操作符与相等操作符混淆1.2 多个关系操作符的错误使用1.3 浮点数比较的陷阱二、条件操作符三、逻辑操作符3.1 逻辑取反运算符3.2 与运算符3.3 或运算符3.4 短路问题3.4.1 && 的短路3.4.2 || 的短路C语言作为一门接近底层的编程语言,其操作符系统设计精巧而强大。在众多操作符中,关系操作符、条件操作符和逻辑操作符是构建程序逻辑判断的基础。本文将深入探讨这三类操作符的使用方法和实际应用场景。在C语⾔中,⽤于⽐较的表达式,称为“关系表

2025-11-09 16:21:37 776

原创 C语言 操作符(上)

在我们写代码的时候,一定会涉及到加减乘除,而这些加减乘除就是我们在C语言里说的算术操作符,分别是 + - * / %。这个运算符只能⽤于整数,不能⽤于浮点数,也就是%两端不能有浮点数(小数)。这样代码C语⾔给提供了更加⽅便的写法,就是复合赋值符,它有 +=,-=,*=,/=,%=等。在变量创建的时候给⼀个初始值叫初始化,在变量创建好后,再给⼀个值,这叫赋值。这代码与上图代码的作用是相同的。C语⾔虽然⽀持这种连续赋值,但是写出的代码不容易理解,建议还是拆开来写。的就是它们的操作数,而加减乘除两端。

2025-11-08 01:04:51 547

转载 C++ 类和对象 小知识点

目录文章目录一、初始化列表1.初始化列表格式:2.特性二、Static成员1.static成员概念 2.特性三、友元1.友元概念2.友元函数3.友元类四、内部类1.内部类概念2.特性以一个冒号开始,接着是一个以逗号分隔的数据成员列表,每个"成员变量"后面跟 一个放在括号中的初始值或表达式。例如:这种格式等于:不过初始化列表格式优先度更高 还有初始化列表赋值给的是缺省值2.1 每个成员变量在初始化列表中只能出现一次(初始化只能初始化一次)2.2 类中包含以下成员,必须放在初始化列表位置进行初始化:

2025-03-14 23:15:51 929

原创 C++ operator 关键字 运算符重载 讲解

在C++编程中,运算符重载是体现语言灵活性的重要特性之一。它允许开发者赋予自定义类型与内置类型相似的操作体验,例如让两个自定义类对象直接使用进行相加,或是通过>>实现智能输入。能力越大,责任越大。在享受C++语法带来的便利时,更要严格遵守运算符的语义约定,方能写出既美观又可靠的代码,不然只会吞吐苦果,bug一堆。

2025-03-08 11:06:39 1403

原创 C++ 类的6个默认成员函数(二)

如果一个类中什么成员都没有,简称为空类。空类中真的什么都没有吗?并不是,任何类在什么都不写时,编译器会自动生成以下6个默认成员 函数:构造函数,析构函数,拷贝构造函数,赋值运算符重载函数,两个取地址函数。默认成员函数:用户没有显式实现,编译器会生成的成员函数称为默认成员函数。

2025-03-07 20:17:35 364

原创 C++ 类的6个默认成员函数(一) 讲解

如果一个类中什么成员都没有,简称为空类。空类中真的什么都没有吗?并不是,任何类在什么都不写时,编译器会自动生成以下6个默认成员 函数:构造函数,析构函数,拷贝构造函数,赋值重载,两个取地址。默认成员函数:用户没有显式实现,编译器会生成的成员函数称为默认成员函数。一、构造函数。

2025-03-03 23:02:00 828

原创 C++ this指针讲解

原因:这里p是空指针,传过去的this指针只是接收了p的空指针,但是在PrintA()中,会隐含一个this->_a,而this指针是一个空指针,访问this指针_a的位置,就要对this指针进行解引用,此时程序就会崩溃,因为对空指针进行了解引用。对于上述类,有这样的一个问题: Date类中有 Init 与 Print 两个成员函数,函数体中没有关于不同对象的区分,从汇编代码上看:它们的调用地址都是一样的。注意:这里我们不能显示this指针所操作的写出来,因为他是隐含的,我们不能抢了编译器的活。

2025-03-01 15:01:31 934

原创 C++ 类的概念讲解

类(Class)是C++面向对象编程的核心概念,是一种用户自定义的数据类型。用于封装数据(属性)和操作数据的方法(成员函数),体现现实世界的实体抽象。访问限定符:成员变量声明;成员函数声明;class为定义类的关键字ClassName为类的名字{}中为类的主体类体中内容称为类的成员:类中的变量称为类的属性或成员变量;类中的函数称为类的方法或者成员函数。类定义结束时后面分号不能省略。int month;public:2.1.声明和定义全部放在类体中。

2025-02-28 18:03:20 1871

原创 C++ auto 关键字(C++11) 讲解

auto当在同一行声明多个变量时,这些变量必须是相同的类型,否则编译器将会报错,因为编译 器实际只对第一个类型进行推导,然后用推导出来的类型定义其他变量。// 该行代码会编译失败,因为c和d的初始化表达式类型不同1.auto的优势:代码简洁、泛型友好、维护性高2. 使用建议:优先使用auto、警惕隐式转换3. 谨记限制:理解auto的边界,避免在类成员、函数参数(C++20前)等场景误用。

2025-02-27 09:29:06 984

原创 C++ inline 关键字 内联函数 讲解

inline是 C++ 中用于优化函数调用性能的关键字,适合小型、频繁调用的函数。虽然它可以减少函数调用开销,但过度使用可能导致代码膨胀。现代编译器已经具备强大的优化能力,因此在实际开发中,应谨慎使用inline,优先依赖编译器的自动优化。

2025-02-26 22:52:02 1135

原创 C++ 引用(&)知识点详解

作为C++核心特性之一,引用以安全的别名机制平衡了效率与风险。它既避免了指针的复杂内存操作,又突破了值传递的性能瓶颈,在函数传参、返回值优化等场景中展现独特价值。引用机制在提升代码效率和可读性方面优势明显,但也需注意其使用限制。理解引用与指针的本质差异,根据具体场景合理选择,是写出高质量C++代码的关键。

2025-02-24 22:25:03 872

原创 C++ 函数重载详解:规则、类型、歧义与浅谈底层原理

什么是函数重载?函数重载(Function Overloading)是 C++ 的核心特性之一,允许在同一作用域内定义多个同名函数,只要参数个数不同或 类型不同 或 参数类型顺序不同。通过这种方式,相同的函数名可以根据不同的参数类型或数量执行不同的逻辑,提升代码的可读性和灵活性。优势:提升代码复用性,简化接口设计。核心规则:参数列表必须不同,作用域一致。C/C++ 差异:C++ 通过名称修饰支持重载,C 语言因符号规则限制无法实现。

2025-02-23 16:17:07 812

原创 C++命名空间与缺省参数

定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一对{}即可,{} 中即为命名空间的成员。1. 正常的命名空间定义// 命名空间中可以定义变量/函数/类型2. 命名空间可以嵌套test.cppint a;int b;int c;int d;3.多个命名空间合并同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中。ps:一个工程中的test.h和上面test.cpp中两个N1会被合并成一个test.h。

2025-02-22 14:55:06 989

原创 C语言之循环语句

1.while循环该如何表达:当表达式为真时,循环会一直进行下去,直到表达式为假或者使用break跳出。2.while循环如何运行的呢?具体应是顺序运行:⾸先上来就是执⾏判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执⾏循环语 句,语句执⾏完后再继续判断,是否进⾏下⼀次判断。

2023-10-28 11:04:47 417 1

原创 C语言之分支语句

基本if语句在C语言中通常为解决选择问题时,我们会使用分支语句进行编译代码,使代码可以正常运行并且解决问题,下面让我一一讲解分支语句的基本语句基本if语句if语句正如它字面意思一样为“如果”,它是一个条件语句,它的基本功能是判断条件是否成立,如果成立则执行if语句下面的代码,不成立则不执行。换种意思则是表达式条件为真时执行,为假时不执行。语句的条件表达式书写如图:在括号内()的代码如果为真则执行下面代码,为假则不执行。

2023-10-26 20:33:24 247 1

空空如也

空空如也

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

TA关注的人

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