自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C语言自定义类型联合和枚举(25)

关于自定义类型除了我们常用的结构体,其实还有联合与枚举也是属于自定义类型我们也来学习一下吧!枚举顾名思义就是一一列举,而列举可能的取值是用于定义一组具有离散值的常量,使数据更简洁、方便使用,关枚举的关键字enum其实中途跳过去写Cpp了,现在再跳回来…反复横跳!

2024-10-05 20:44:11 859 5

原创 Cpp::STL—list类的使用与理解(13)

是的,我们又来学一个新容器,list!它跟前面的相比,难在迭代器的理解请加油,正文开始!list文档介绍list是可以在常数范围内在任意位置插入和删除的序列式容器,并且该容器可以前后双向迭代list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向其前面一个元素和后一个元素list与forward_list非常相似:最主要的不同在于forward_list是单链表,只能朝前迭代,已让其更简单高效与其他的序列式容器相比,list通常在任意位置进行插入,

2024-10-05 14:34:51 866 5

原创 Cpp::STL—string类的模拟实现(12)

string类的模拟实现源代码我好像把string类的模拟实现给遗漏了没关系,我们现在来补!总算是补上了!可以看出string类的完整实现还是蛮复杂的。

2024-10-03 19:00:09 903 13

原创 Cpp::STL—vector类的模拟实现(11)

我们来实现一下vector吧!这会很有意思的!怎么样,接下来我们就要迎来不太一样的list了哦!

2024-10-03 14:18:14 1050 11

原创 Cpp::STL—vector类的使用与理解(上)(10)

结束了第一关string后,我们将来学习一下vector应该说有了string的经验后,vector设计得就不那么冗余,但是仍有很多有趣的东西值得我们学习来试试吧!vector文档介绍vector是表示可变大小数组的序列容器,底层是动态开辟顺序表就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理当vector需要重新分配大小时,其做法是,

2024-10-03 01:59:26 1386 17

原创 Cpp::STL—string类的使用与理解(下)(9)

我认为要想详尽认识string,请看该文档接上篇,我们继续来学习string这个类吧正文开始!使用 std::string 可以显著提高代码的安全性、可读性和可维护性,同时减少了手动内存管理带来的复杂性和风险。在现代 C++ 编程中,std::string 已成为处理字符串的首选工具,除非在特定情况下(如需要与 C 代码库兼容)才会选择使用 C-string马上就要来学习string类的底层实现了,期待吧!

2024-09-29 03:30:10 1011 21

原创 Cpp::STL—string类的使用与理解(上)(8)

C语言中,字符串是以’\0’结尾的一些字符的集合(C-string),为了操作方便,C标准库中提供了一些 str 系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要用户自己管理,稍不留神可能还会越界访问。这就是我们为什么学习string类的理由,如果你对前面类和对象的内容了解透彻的话,学习STL按道理来说应该不算太难。

2024-09-28 21:34:20 960 16

原创 Cpp内存管理(7)

软件开发过程中,内存管理的重要性不言而喻因此我们有必要了解一下C++中关于内存管理的一些特性C++对内存的自由度使其获得了更高的性能,以及更高的难度。内存泄漏往往是每个C++学习者绕不开的错误, 而内存管理的水平高低也能看出一个编程者的能力new会调用构造函数,delete会调用析构函数,而malloc和free不会,原理下文再来解释哈,本节内容还是蛮轻松惬意的,至少跟类和对象比起来是这样那么现在,我们来接着往下看模板相信我,这会更有意思!!!

2024-09-26 13:21:47 1284 15

原创 Cpp类和对象(下)(6)

Hello,本篇应该是类和对象系列里面较为轻松的一篇了,尤其是在经历了中篇的洗礼之后(,但是不可掉以轻心,要说这个下篇比上篇简单,那也是没有的继续加油!前面讲了那么多,下面用一张表来尝试捋清一下一言以蔽之:无论是否显示写初始化列表,每个构造函数都有初始化列表!无论是否在初始化列表显式初始化,每个成员变量都要走初始化列表初始化!怎么样!是不是感概终于撑过来了,现在终于可以缓口气了,接下来的内存管理会相对较为简单,且能让你在本篇的一些疑惑得到更好的解答,所以休整一下,我们马上继续出发!

2024-09-24 16:50:25 1036 25

原创 Cpp类和对象(中续)(5)

继承上节的内容,本节内容依旧量大管饱!!哈哈,这个中篇终于结束了,想不到吧,学Cpp的第一个大内容就如此困难!还有个下篇呢,继续加油吧!

2024-09-22 18:03:59 1297 21

原创 Cpp类和对象(中)(4)

来了来了,事先声明本篇文章量大且深不可垂头丧气,也不可掉以轻心冲锋!局部对象(后定义先析构)局部的静态全局对象(后定义先析构)可以得出,以上就是销毁顺序若有向系统申请动态资源,那么就要考虑自己写显式析构函数了其实,若未显示定义,编译器会生成默认的拷贝构造函数。默认的拷贝构造函数对象按照内存存储按字节序完成拷贝,这种拷贝叫做浅拷贝(值拷贝),有点像memset我们不写拷贝构造函数,采用编译器默认生成的,看看效果:与 Date d3(d2);是等价的。

2024-09-22 15:37:40 777 8

原创 Cpp类和对象(上)(3)

哈哈,类和对象可以说是我们正式学习Cpp的第一节课上篇还不算很难,甚至可以说还是蛮有意思的正文开始!声明和定义全部放在类体中请注意,成员函数如果在类中定义,编译器可能会将其当成内联函数处理声明放在头文件(.h)中,定义放在源文件(.cpp)中请注意,成员函数名前需要加 “类名::”一般情况下,更期望采用第二种方式,因为这样体现了面对对象编程的封装特性提高代码的可维护性你再看上面这两段代码的成员变量,你可能奇怪为什么每个变量前都有个下划线_,这是为了与成员函数的形参区分开class Date。

2024-09-18 15:01:03 1479 17

原创 Cpp快速入门语法(下)(2)

函数重载、引用、内联函数、auto、范围for、nullptr

2024-09-17 21:07:46 1404 6

原创 Cpp快速入门语法(上)(1)

命名空间、输入输出、缺省参数

2024-09-17 18:44:19 909

原创 C语言自定义类型结构体(24)

事实上,我们早就有过关于结构体的学习现在,我们再来深入理解它一下位段的成员必须是int、unsigned int或 signed int,在C99中位段成员的类型也可以选择其他类型位段的成员名后边有一个冒号和一个数字struct Aint _a:2;int _b:5;int _c:10;int _d:30;// A就是一个位段类型那么位段A所占内存的大小是多少?为什么不是按照前面讲述的内存对齐,是16反而是8?我也没想到结构体深入了解竟然能讲出那么多东西来,哈哈。

2024-09-15 21:32:28 1497 11

原创 C语言浮点型数据在内存中的存储(23)

哎,之前写了一篇,可是中途退出没保存,只能再写一遍了~浮点数在内存中的存储跟整型还是有很大区别的正文开始!但是我还是再写了一遍!还是挺满意这篇的,比较精炼。

2024-09-14 20:03:01 793 1

原创 Cpp入门引言(0)

哈!这是第一篇C++的有关内容,就来介绍一下C++的历史和一些我的看法吧不如先来看看我们的祖师爷Bjarne Stroustrup吧!C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机, 20世纪80年代, 计算机界提出了OOP(object面向对象)思想,支持面向对象的程序设计语言应运而生。什么是面向对象?为什么C语言不太行?没事,你先这样记着,之后会慢慢讲解。

2024-09-14 11:41:30 1133

原创 C语言整型数据在内存中的存储(22)

本篇是修炼内功的文章首先,你先明白一个事实,数据在内存中是以二进制的形式存储的然后正文开始!申请一个变量:int a = 0x11223344;// 占用4个字节请问,这样在内存中有几种可能?答案是三种:我们也思考,数据的存储,是未来将来正确的取出,而第三种方式随便放就显得很奇葩,很难记下来,不符合我们常用的习惯,假如你是C语言设计者,也不会选择这一种方式而第一种叫做大端字节序存储,第二种叫做小端字节序存储两者的区别都是在存储超过一个字节的数据显现的,其实说到底就是存储顺序。

2024-09-14 01:14:32 1052

原创 C语言内存函数(21)

正文开始,发车!我们在学习的时候应该带有自己的思考,比如上述 arr1 和 arr2 的图片可能有一个地方会引起你的注意对于每个 int 的四个字节,数据低位同时也是存放在地址的低位举例来说,假如把 int a = 1;存放在内存里面:0x00000093F16FF6A8 :存放010x00000093F16FF6A9 :存放000x00000093F16FF6AA :存放000x00000093F16FF6AB :存放00。

2024-09-13 11:57:00 1237 2

原创 C语言字符函数和字符串函数(20)

开启新阶段的学习了!大家加油!这篇篇幅很长,很多都是相当枯燥的干活,希望你能啃下来~

2024-09-12 23:38:37 913

原创 C语言深入理解指针六(19)

本篇都将是练习题,从而让你对指针的理解更上一层楼指针的教学到这里就结束了,但是指针的运用会贯穿我们之后整个的学习路程,大家要好好掌握!

2024-09-12 14:54:22 1211

原创 C语言深入理解指针五(18)

本篇将会很有意思!这篇文章应该会让你对指针有个别样的认识指针太重要了,下一篇我会以练习题为主来巩固。

2024-09-11 21:39:45 1082 4

原创 C语言深入理解指针四(17)

继续!回调函数预告,我保证下一章你会感慨函数调用的奇妙!

2024-09-11 14:21:08 838

原创 C语言深入理解指针三(16)

我们来继续学习指针!感觉如何,从本章开始,大家是不是感觉难度上来了呢,加油,后面会更精彩的!

2024-09-11 10:30:32 1383

原创 C语言深入理解指针二(15)

本节课开始上点有意思的内容了!本章开始已经有点意思起来了,但是难的还在后面!

2024-09-10 23:37:48 738

原创 C语言深入了解指针一(14)

终于来到指针啦!如前篇末尾总结所说,这是你们马上要下大功夫的地方但是,就像我们上初中的时候,有人说函数难;我们上高中的时候,有人说导数、圆锥难;上大学的时候,有人说微积分难,事实上,别被吓到了,先勇敢尝试,迈过去了也就那么回事指针我估计会出好几篇,第一篇就先不太难,也不太多,并且尽量以图形语言来展示,也卖了几个关子,回头见!

2024-09-10 20:41:51 952

原创 C语言操作符详解(13)

其实之前我们也有过操作符的讲解,今天我们再来深入地了解一下它操作符的学习,说实话是有些枯燥的,感觉动脑的还是比较少,但是别急我们接下来就要迎来指针的学习了,这很重要,你必须深刻掌握它,于是我先预告一下。

2024-09-10 15:23:06 1351

原创 C语言函数递归(12)

递归是学习C语言函数一个绕不开的话题,那什么是递归呢?其实之前扫雷的Spread函数就运用了递归,本质上是一种解决方法,在C语言中,就是函数自己调用自己这种思想很美妙,也很强大,但是一开始你可能会感到有些困难,不要怕,试着理解它关于递归,其实你可以回想一下高中的数学归纳法,它们很像递归问题还有汉诺塔问题和青蛙跳台阶的问题后期我们在学习数据结构的时候,会经常使用递归,初期学习的时候,可以画一下递归图,而后面就要尝试把它看成是一个抽象的过程,到时候请慢慢体会。

2024-09-09 21:35:28 924

原创 C语言学习中的实用调试技巧(11)

本篇文章以VS2022环境下为背景进行调试技巧的教学bug本意是“昆虫”或“虫子”,现在一般是指在电脑系统或程序中,隐藏着的一些未被发现的缺陷或问题,简称程序漏洞。

2024-09-09 17:51:07 916

原创 C语言扫雷进阶拓展(10)

本文章源代码完全公开在上篇文章中我们对扫雷游戏的基础版本已经有了一个详细且全面的了解,但是基础版本的功能十分有限,游玩体验也不够好,因此,我们来拓展它。行至中江,举帆!感觉这个进阶篇写的比基础篇还好,可能是更用心的缘故吧,继续加油!

2024-09-05 23:36:47 1280 2

原创 C语言扫雷初阶(9)

扫雷可是家喻户晓的小游戏了,想不到我们已经有了编写它的能力吧!到目前为止,该扫雷的效果跟我们网页游玩的还是有差异,比如说时间限制、开局展成一篇、是否可以标记雷等,这些我们下次再讨论。

2024-09-05 01:19:43 460

原创 C语言函数(8)

扫雷预告!

2024-09-04 22:49:47 1156

原创 C语言数组(7)

数组是一组相同类型元素的集合,也就是说1.数组中存放的是1个或者多个数据,但是数组元素个数不能为02.数组中存放的多个数据,类型是相同的介绍了有关数组的一些知识,已经开始接下来进一步的学习了!

2024-09-04 13:18:49 948

原创 C语言猜数字小游戏(6)

增进舍友感情小妙招(

2024-09-04 09:03:53 1128 2

原创 C语言分支和循环(下)(5)

介绍了余下的分支和循环内容

2024-09-04 02:26:06 876

原创 C语言分支和循环(上)(4)

介绍了C语言中一部分的循环语句

2024-09-04 01:52:25 922

原创 C语言scanf和printf介绍(3)

scanf和printf可以说是我们最早接触的库函数了,因此,我们有必要单独详细地介绍它们一下今天讲了printf和scanf两个最先遇到的函数,其实这两个函数的学问很多,后续你们会慢慢发现的。

2024-09-03 10:02:02 1073

原创 C语言数据类型和变量(2)

介绍了C语言的数据类型和变量有关内容

2024-09-02 17:46:09 1116

原创 C语言常见概念(1)

介绍了一些C语言的基础概念语法

2024-09-02 13:29:06 1247

原创 中南大二学长为新生带来的C语言入门(0)!

编程(C语言)的引言

2024-09-01 00:52:07 817 1

空空如也

空空如也

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

TA关注的人

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