自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【c++模板】泛型编程(你真的懂模版特化、分离编译和非类型参数吗)

【c++模板】泛型编程(你真的懂模版特化、分离编译和非类型参数吗)一个程序(项目)由若干个源文件共同实现,而每个源文件单独编译生成目标文件,最后将所有目标文件链接起来形成单一的可执行文件的过程称为分离编译模式。1. 泛型编程2. 函数模板3. 类模板4非类型模板参数5. 类模板的特化6. 模板的分离编译

2024-03-27 20:48:48 917 6

原创 [STL]priority_queue类及反向迭代器的模拟实现

我们现在写一个可以比较两个变量大小的仿函数以及函数class Less那么问题来了,仿函数的优势是什么呢?我们知道有时候为了在函数中调用别的函数我们需要传一个叫做函数指针的东西,简单的函数还好,复杂的函数的指针是真的难看懂,于是乎,仿函数横空出世,你要用它就传个他的类就行,一下子容易多了。仿函数的用法及优势,并在priority_queue适配器中加以应用对priority_queue进行了了解和模拟,实现很久前就提到的了反向迭代器,对迭代器这个概念有了更深的了解。

2024-03-26 19:57:28 755 3

原创 【c++】【STL】stack类、queue类、deque类详解及模拟

4.1 deque的原理介绍deque(双端队列:是一种双开口的连续空间的数据结构,双开口的含义是:可以在头尾两端进行插入和删除操作,且时间复杂度为O(1),与vector比较,头插效率高,不需要搬移元素;与list比较,空间利用率比较高。这节课我们学了容器适配器vector、list类的模拟、deque的底层设计,看到了他迭代器的复杂应用。

2024-03-26 12:54:41 1072 3

原创 【STL】list类的讲解及模拟实现

学习完list类,与之前相比,最大的收获就是迭代器的设计,同时也对多参数模板有了更深一步的了解,虽然过程艰辛,但是,List,over!相信下一个难题也会被攻克😘😘😘。

2024-03-25 00:29:18 1101 8

原创 vector类详解及重要函数实现

STL容器之vector,他来了!【本节目标】1.vector的介绍及使用2.vector深度剖析及模拟实现1.vector的介绍1. vector是表示可变大小数组的序列容器。2.就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。3.本质讲,vector使用动态分配数组来存储它的元素。

2024-03-23 23:16:42 1429 6

原创 string类详解及重要函数实现

咱们之前也是打开了c++的大门,相信很多朋友对这门新的语言都充满了好奇,那么今天就来份硬菜满足一下各位,铛铛铛铛,c++第二座大山:STL之string,他来了!【本节目标】1.为什么要学习string类2.标准库中的string类3. string类的模拟实现1.为什么学习string类?1.1 C语言中的字符串C语言中,字符串是以'\0'结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合。

2024-03-23 00:50:35 912 5

原创 c++类和对象(下)

咱们之前也是打开了c++的大门,相信很多朋友对这门新的语言都充满了好奇,那么今天就来份硬菜满足一下各位,铛铛铛铛,c++第一座大山:类和对象,他来了!来学习类和对象的宝子们如果没看上期可以点链接看一下哦c++类和对象(上)以及c++类和对象(中)【本节目标】1.再谈构造函数2. Static成员3.友元4.内部类5.匿名对象6.拷贝对象时的一些编译器优化7.再次理解封装1.再谈构造函数1.1 初始化列表的由来。

2024-03-20 21:07:12 920 1

原创 c++类和对象(中)类的6个默认成员函数及const成员函数

咱们之前也是打开了c++的大门,相信很多朋友对这门新的语言都充满了好奇,那么今天就来份硬菜满足一下各位,铛铛铛铛,c++第一座大山:类和对象,他来了!来学习类和对象的宝子们如果没看上期可以点链接看一下哦c++类和对象(上)【本节目标】1.类的6个默认成员函数2.构造函数3.析构函数4.拷贝构造函数5.赋值运算符重载6. const成员函数7.取地址及const取地址操作符重载1.类的6个默认成员函数如果一个类中什么成员都没有,简称为空类。

2024-03-19 22:47:11 894 21

原创 c++类和对象(上)

咱们之前也是打开了c++的大门,相信很多朋友对这门新的语言都充满了好奇,那么今天就来份硬菜满足一下各位,铛铛铛铛,c++第一座大山:类和对象,他来了!【本节目标】1.面向过程和面向对象初步认识2.类的引入3.类的定义4.类的访问限定符及封装5.类的作用域6.类的实例化7.类的对象大小的计算8.类成员函数的this指针1.面向过程和面向对象初步认识C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。C++是基于面向对象的,关注的是。

2024-03-18 21:39:19 1238 11

原创 c++入门你需要知道的知识点(下)

上次我们通过c++入门知识(上)对c++有了一小点点的了解,今天便是让你彻底打开c++大门,进入大殿,欧克,正片开始。1. C++关键字2.命名空间3. C++输入输出4.缺省参数5.函数重载6.引用7.内联函数8. auto关键字(C++11)9.基于范围的for循环(C++11)10.指针空值现在我们算是把c++的大门给推开了,ok,向着c++,我们类和对象再见啦!

2024-03-16 16:08:29 742 12

原创 c++入门你需要知道的知识点(上)

咱也是好久没有更新了,继c语言和数据结构之后,今天再开个新坑c++,学c++与C语言有个共同点,那就是要及时写博客,一方面是及时总结知识方便以后回顾复习,一方面也是检验自己当前的学习效果,欧克,那麽今天我们就要踏入c++的大门,今天先来初窥门径。1.本节要求C++是在C的基础之上,容纳进去了面向对象编程思想,并增加了许多有用的库,以及编程范式等。熟悉C语言对C++学习有一定的帮助,本节主要目标:1.C++是如何对C语言设计不合理的地方进行优化的,比如:作用域方面、IO。

2024-03-15 20:37:24 1133 6

原创 C语言贪吃蛇详解

好啦,学了这麽久的C语言也该给他画上一个句号了吧,一个400多行代码的贪吃蛇游戏显然是一个不错的选择,那么一起来学习吧!

2024-02-14 20:18:01 1585 2

原创 扫雷C语言(可展开一片空白)

1.玩家可以通过选择1进入游戏,0退出游戏。2.选错的话提醒玩家,重新选择。3.告诉玩家游戏规则1.包含需要的头文件2.包含需要的宏定义3.包含需要的函数接口恭喜你,看完了这~么长的文章,熟能生巧,看完记得练习哦,ps:本章部分图片来源《比特就业课课件》。

2024-02-02 18:48:51 1077 4

原创 三子棋游戏小课堂

已经学会数组的朋友们注意啦,现在的你已经有能力写出两个小游戏了,一个是扫雷,一个是三子棋,今天咱们就来手搓三子棋代码。C语言实现随机数数组的使用1.玩家可以通过选择1进入游戏,0退出游戏。2.选错的话提醒玩家,重新选择。3.告诉玩家游戏规则。

2024-01-31 20:38:53 1009 5

原创 2023年博客总结反思与未来规划

我是某个211的大一学生,当前专业是信息工程学院,是暑假最后半个月开始接触编程,之前完全没有学习过,我学编程的主要原因是自己对编程感兴趣,次要原因是专业对编程能力有一定要求。

2024-01-31 17:55:34 945 1

原创 双链表的基本知识以及增删查改的实现

之前我们对单链表进行了非常细致的剖析,现在我们所面临的则是与之相对应的双链表,我会先告诉诸位它的基本知识,再接着把它的增删查改讲一下,ok,正文开始。我们上一篇也说了。链表一共有八种,具体可以看下文。【单链表实现通讯录(增删查改) - CSDN App】http://t.csdnimg.cn/EABuy我们之前所说的单链表指的是不带头不循环单向链表,而双链表则是带头循环双向链表,只要会了这两个,那八种链表就都会了。二.为什么引入双链表?

2024-01-30 22:50:53 623 8

原创 单链表实现通讯录(增删查改)

前言之前写了很多次通讯录,一次比一次复杂,从静态到动态,再到文件操作,再到顺序表,今天要好好复习一下单链表,于是乎干脆用单链表再写一遍。首先我们之前已经用单链表写过他的增删查改了,于是乎,我们应该在此基础之上进行修改,而不是从头开始写,先把之前的增删查改拿出来。

2024-01-29 21:09:35 812 1

原创 数据结构之单链表详解

之前大摆了5天多,没怎么学编程,自昨日起,觉不可如此,痛定思痛,开始继续学习,昨天刷了20多道简单级别的力扣,今天想把链表好好巩固一下,于是乎,把单链表的增删查改搞了出来,还用单链表写了通讯录,等下写完博客在去和双链表缠斗一番,ok,王子公主请看下文。//不对劲////////!链表的结构跟⽕⻋⻋厢相似,淡季时⻋次的⻋厢会相应减少,旺季时⻋次的⻋厢会额外增加⼏节。与顺序表不同的是,链表⾥的每节"⻋厢"都是独⽴申请下来的空间,我们称之为“结点/节点”是带头双向循环链表。构的⼦结构,如哈希桶、图的邻接表等等。

2024-01-29 20:46:49 681 2

原创 数据结构之使用顺序表写出通讯录

int age;注意注意,重点来了,我们定义了一个结构体,它包含了通讯录联系人的种种信息例如姓名,性别,年龄,电话和住址,接着我们又给结构体换了个名字——SLDataType它是个英文缩写,即Sequence List Data Type,顺序表数据类型,ok回想一下上一篇文章,我们所用的顺序表数据类型是int,当时也是给他换成了这个名字,如此一来,之前我写的函数就不会因为类型改变而要再全部改一遍了。int size;}SL;

2024-01-22 22:41:37 1467

原创 数据结构之顺序表的增删查改

假如我们每次扩2个或3个,那很容易就会不够,扩容很频繁,导致性能消耗,如果一次扩1000个,2000个又很容易空间浪费,但如果我们以倍数扩容,随着空间越来越大每次增加的空间也会越来越大,这样扩容就不会很频繁,浪费空间也不会很多,我们通常是采用2倍扩容或1.5倍扩容,至于为什么是这俩数字就涉及到数学原理了,我能力有限,无法作答。ok,至此,我们知道了什么是顺序表,顺序表的增删查改四种功能我们也都实现了,可以说是迈出了相当大的一步,下一次我们将会在此基础上实现通讯录,但是在物理结构上并不⼀定是连续的,

2024-01-21 22:48:55 2648 5

原创 编译和链接

一些学校里几乎没讲过编译和链接的知识,但这部分知识还是蛮重要的,而且他还算是比较抽象的的那种,所以说搞明白编译链接是很重要的,ok,那么今天的C语言,启动!1.翻译环境和运行环境我们在IDE上敲出代码,然后运行,就会跑出我们想要的东西,这个过程分为两个部分,分别是在翻译环境下进行,和在运行环境进行。翻译环境:在这个环境中源代码被转换为可执行的机器指令。(也就是二进制指令)执行环境:它用于实际执行代码。

2024-01-19 22:30:42 629 3

原创 文件操作解析(一)

磁盘上的⽂件是⽂件。但是在程序设计中,我们⼀般谈的⽂件有两种:程序⽂件、数据⽂件(从⽂件功能的⻆度来分类的)。

2024-01-18 10:37:39 1022 1

原创 整型和浮点数在内存中的存储

我们都知道数据在计算机中是以二进制的形式存储的,那么问题来了,不同类型的数据的具体存储方式是什么,今天我想就整形和浮点数展开叙述。那么,第⼀位的符号位S=0,有效数字M等于001后⾯再加20个0,凑满23位,指数E等于3+127=130,⽐如保存1.01的时候,只保存01,等到读取的时候,再把第⼀位的1加上去。这时,浮点数的指数E等于1-127(或者1-1023)即为真实值,有效数字M不再加上第⼀位的1,⽽是还。对于32位的浮点数,最⾼的1位存储符号位S,接着的8位存储指数E,剩下的23位存储有效数字M。

2024-01-16 19:39:09 982

原创 深入了解指针(一)

ok,今天的内容包括以下这些1.内存和地址2.指针变量和地址3.指针变量类型的意义4.const修饰指针5.指针运算6.野指针7.assert断⾔。

2024-01-16 10:58:43 1129 1

原创 打气球小游戏C语言代码实现

今天的学习就到这里了,希望大家在寒假可以学习自己想学的东西,不被各种无奈的原因限制,一起加油!

2024-01-15 15:36:51 1375

原创 C语言详解之一维数组二维数组以及变长数组

今天打算把数组的相关知识知识复习一下,比如初始化,调用,以及他和指针的关系等等在C语言中,一维数组的构成由数据类型和数组名组合而成。例如,int类型的数组可以定义为int array[5],其中array是数组名,int是数据类型,5是数组的大小,[]是下标引用操作符,这个数组可以存储5个整数值。int arr[5];与一维数组十分相似,表示创建了一个3行4列的数组,元素是int类型。

2024-01-08 15:14:30 1247 1

原创 整型在内存中的存储方式

在打印的时候是以%d打印的,因此a,b要发生整形提升,a作为无符号数提升后为00000000 00000000 00000000 11111111。对于无符号char来说它的范围是0到255,都是存了256个不同的数,而且当你存的数字超过他的范围时,就会开始循环了如下图所示。首先我们要知道数据都是以二进制的形式存储于计算机中的,而不同的类型在不同平台下占用的空间大小也不一样,具体可看下图。今天要复习的内容是数据在内存中的存储,主要是整型与浮点两种,还有大小端的介绍。同理,b:11111111。

2024-01-07 21:29:39 471

原创 数据在内存中的存储之大小端

大小端是数据在电脑上存储的字节顺序,大端存储是将数据的高位存储在内存的低地址处,小端存储是将数据的低位存储在内存的低地址处。

2024-01-06 18:19:19 667 2

原创 leetcode:136只出现一次的数字(详解),又名找到单身狗

我后来才知道这是力扣上的一道题,我当时写他的时候名字叫找到单身狗,即使那个只出现了一次的数字。

2024-01-05 11:50:02 1292

原创 贪吃蛇C语言实现(有源码)

一直想写个小游戏玩玩,现在也算是小小的玩了一把,可惜最近要复习,没有时间学图形库了,不然真希望继续做点东西。最后祝愿还没考的同学考出好成绩,考完的寒假快乐,工作的早点放假,

2024-01-04 09:10:20 1767 5

原创 求一个整数二进制中1的个数(三种方法详解)

当涉及到二进制时就要想到按位操作符,右移左移操作符了,同时也可以在有时间的情况下探索一下是否有更多思路。

2024-01-03 16:36:25 762 3

原创 C语言中结构体的定义,变量的创建和初始化,相关的指针调用以及存在的内存对齐。

结构体是C语言中的一种数据类型,它由一系列其他的数据类型(如int char,double,数组和别的结构体)等组成,这些数据类型定义的变量名被称为是结构体的成员,其成员可以是同种类型也可以是不同种类型,具体取决于程序员(感觉有点像数组plus)。首先要知道结构体的关键字是struct,其定义方式有两种。函数menu()的功能是按[商品编号] 商品名称 商品单价形式显示菜单,分行输出各商品信息,包括商品编号、商品名称和商品单价。

2024-01-02 23:49:14 645 1

原创 C语言之sizeof详解,5点透析,帮你真正了解它

第一点:今天复习C语言了解到不少和她有关的知识,才知道之前对他了解甚少,于是写下博客及时记录自己的所得,与大家分享一下第一点:sizeof是一个关键字而不是函数!是的,他不是函数!!!原因很简单,函数在调用时后面都会加一个(),这个叫函数调用操作符,但是sizeof在后面接变量时是可以不带括号的。

2024-01-01 16:36:26 769 1

原创 烟花代码C语言

元旦已到,所以想自己用c写份C语言实现的烟花代码,也是花了好几个小时,现在终于完工了。我的的代码要用到easyx图形库和vs编译环境,ok,那么话不多说正文开始视频效果我也上传了。

2023-12-31 23:47:53 1208 5

原创 scanf函数返回值占位符详解,%*,%[]的应用

scanf函数可以说是我们一开始就会接触的函数了,但在最近复习时我又找到而来一些之前不甚了解或是块要遗忘的知识,特作此篇。

2023-12-30 11:38:58 1916 3

原创 如何解决scanf返回值被忽略的问题

最近在复习c语言,发现了许多之前不了解的知识,今天想来与大家分享一下scanf返回值值被忽略的问题。很多人应该都在vs中见到过,我们先说原因,再说改进方法。

2023-12-30 09:46:56 5659 4

原创 C语言实现随机数,及猜数字小游戏

最近在复习c的知识,想起之前写过一个猜数字小游戏,所以今天就把自己关于随机数的使用经验分享一下,希望对大家有帮助。

2023-12-29 18:32:22 863 2

原创 牛客BC115 超级圣诞树

ok,那么牛客上两道打印圣诞树的题的就完成了,看完记得的自己动手试试瞧瞧代码哦。

2023-12-20 20:22:17 794 3

原创 pta6-6万年历显示函数

今天有人问了我一个万年历的题,那道题本身不难,因为你只需要写一个函数就可以,但我突发奇想——为什么不把它的全部函数写出来呢?说干就干(ps突然想到单片机貌似是可以用到这个代码的,正好学会后拿他练练手)题目如下设计一个万年历,当用户输入年份和月份时,显示这个月的日历表。程序重点是这个月的第一天是星期几和这个月有几天,有了这两个值,只需通过排列,就可以显示这个日历。程序要求用户输入的年份是从1900年开始,已知1900年1月1日是星期一。

2023-12-18 23:58:25 1099 1

原创 PTA 6-2自动售货机,c语言答案,包含解析

PTA 6-2自动售货机,c语言答案,包含解析书接上回,今天学校发了几道题,而这道题罕见的在CSDN里找不到,同时题本身对刚学结构体的同学,也有一定难度所以想和大家分享一下我的一点心得。

2023-12-16 23:23:30 4525 5

空空如也

空空如也

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

TA关注的人

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