- 博客(28)
- 收藏
- 关注
原创 C++复习day06
什么是内存泄漏:内存泄漏指因为疏忽或错误造成程序未能释放已经不再使用的内存的情况。内存泄漏并不是指内存在物理上的消失,而是应用程序分配某段内存后,因为设计错误,失去了对该段内存的控制,因而造成了内存的浪费。
2024-09-07 17:54:13 875
原创 C++复习day05
自定义类型就是我们使用class/struct/union等自己定义的类型,看看下面的程序,就会发现编译器生成默认的构造函数会对自定类型成员_t调用的它的默认成员函数。关于编译器生成的默认成员函数,很多童鞋会有疑惑:不实现构造函数的情况下,编译器会生成默认的构造函数。:C++11 中针对内置类型成员不初始化的缺陷,又打了补丁,即:内置类型成员变量在类中声明时可以给默认值。这两个运算符一般不需要重载,使用编译器生成的默认取地址的重载即可,只有特殊情况,才需。拷贝构造函数也是特殊的成员函数,其特征如下。
2024-09-06 20:43:28 2053
原创 C++复习day04
自然语言中,一个词可以有多重含义,人们可以通过上下文来判断该词真实的含义,即该词被重载了。比如:以前有一个笑话,国有两个体育项目大家根本不用看,也不用担心。一个是乒乓球,一个是男足。前者是“谁也赢不了!”,后者是“谁也赢不了!函数重载:是函数的一种特殊情况,C++允许在同一作用域中声明几个功能类似的同名函数,这些同名函数的形参列表(参数个数 或 类型 或 类型顺序)不同,常用来处理实现功能类似数据类型不同的问题。1. 参数类型不同2. 参数个数不同3. 参数顺序不同写个代码来举个例子。
2024-09-05 16:34:44 844
原创 C++复习day03
三种表⽰⽅法均有符号位和数值位两部分,符号位都是⽤0表⽰“正”,⽤1表⽰“负”,⽽数值位最⾼位的⼀位是被当做符号位,剩余的都是数值位。:直接将数值按照正负数的形式翻译成⼆进制得到的就是原码。:将原码的符号位不变,其他位依次按位取反就可以得到反码。整数的2进制表⽰⽅法有三种,即 原码、反码和补码。的三种表⽰⽅法各不相同。的原、反、补码都相同。:反码+1就得到补码。
2024-09-04 13:31:56 264
原创 C++复习day02
结构体就是一些值的集合直接上重点,来介绍一下内存对齐1. 结构体的第⼀个成员对⻬到和结构体变量起始位置偏移量为0的地址处2. 其他成员变量要对⻬到某个数字(对⻬数)的整数倍的地址处。**对齐数** = 编译器默认的⼀个对⻬数 与 该成员变量⼤⼩的较⼩值。- VS 中默认的值为 8- Linux中 gcc 没有默认对⻬数,对⻬数就是成员⾃⾝的⼤⼩3. 结构体总⼤⼩为最⼤对⻬数(结构体中每个成员变量都有⼀个对⻬数,所有对⻬数中最⼤的)的整数倍。
2024-09-03 22:02:58 479
原创 MySQL数据库
如果说数据库是用来存储数据的,那么存储数据用文件就可以了,为什么还要弄个数据库,这难道不是多此一举吗?事实上,用文件来存储数据有诸多不便。1)文件的安全性问题2)文件不利于数据查询和管理3)文件不利于存储海量数据4) 文件在程序中控制不方便数据库存储介质:1) 磁盘2) 内存为了解决文件的诸多不合适,专家们设计出更加利于管理数据的东西——数据库,它能更有效的管理数据。可以说,数据库的水平是衡量一个程序员水平的重要指标。
2024-06-17 23:04:53 1055
原创 力扣周赛398题解
因为我们是要统计每个数字的每一位的不同的数量,下标刚好就是在我们当前这个位置一共有多少个数字,我们可以搞一个哈希表,来统计在我们这个位置之前的,这个位置的值出现的次数。先来解释一下这个题目的意思,说是最小的阶梯是0,从1阶梯开始,要求我们走到k阶梯,有两种操作,但是是有条件的。换一种考虑的方法,既然是要考虑相邻的元素之间的奇偶性,不妨直接考虑他们之间的“逗号”。我们去考虑每个逗号两侧的数字的奇偶性的相同,如果是相同的话,记为0,不同的话记为1.,它们都包含了奇偶性不同的数字,因此答案为。
2024-05-21 13:31:53 823
原创 蓝桥杯,路径之谜
题目的意思就是,从入口到出口,对于小明走过的每一个格子,都会使得这个格子对应的行或者列的靶子上的数数字加一。现在给了我们所有靶子上的数字,让我们推断出小明的路径是什么,题目保证了一定有合法的路径。,这两种方法无所谓好坏,只是我一般习惯用深搜。但是在处理最短路径的时候就必须要使用宽搜了。对于这种搜索类的题目而言,常用的方法无非两种,一种是。下面就来对这个题目所使用的算法做进一步的分析。那么我们要怎么做呢?
2024-03-04 12:38:06 512 3
原创 排序2(c++实现)
但是值得一提的是,这里也有一个三数取中的做法,可能会有人觉得他没啥用,其实快速排序是一个不稳定的排序,假如说,我们这个数组本身就是一个降序的数组(其实只要是有序的),我们要把它排成一个升序的数组,那么快速排序的时间复杂度就会变大。这里的基准数和递归就是我们从整个数组中挑选一个数,把这个数作为标准,比这个数小的数,全部放到左边,比这个数大的全部放到右边,再从左边和右边挑选一个基准数,进行下一层的递归。我用了三个字母,l,r,m表示每个区间的下标的左,右,中,每次向下递归,直到碰到“叶子”,然后开始回溯。
2024-01-12 11:37:22 1571 1
原创 扫雷低配版
这厮我们使用的编译器是vs2022,开始之前,我们首先创建三个文件,源文件test.c,game.c,头文件game.h。game.h用来用来声明我们创建的函数和要用的头文件,test.c用来控制整个代码,game.c是实现整个游戏。创建完成之后,大概这样相差不多。 定义一个menu()函数,把他放到test.c源文件中。由于我们只是简单地把它打印出来而已,所以并不需要返回值,因此我们是用void(无返回值): 引入input作为接受用户输入的值,使用do-whi
2023-10-30 21:04:29 87 2
原创 printf()和scanf()函数的滴滴点点
2d是说明宽度是2,比如输入123456789,%2d会将12读取,%3d就把345吸收丢弃,剩下的全部给b,而换行则被%c吸收,因为换行是不可见字符。不难发现,“hello\n"之后有一个空格,而这个空格出现在了下一行,因为这个空格本身也在printf函数的打印范围之内,输出换行之后,就会继续打印空格了。一个0到255之间的整数,都可以被看作一个字符,可以用 %c 输出一个整数的字符,也可以用 %d 输出一个字符的整数。数组名是数组首元素的地址,想要打印出来整个数组的内容,这是远远不够的。
2023-10-29 14:43:44 493 2
原创 C语言--循环
如上,我们采取了while循环。在主函数中,我们首先对 i 进行了定义,而后j将 i 作为了判断条件,i--进行迭代,最终实行打印三次。当然,利用其他循环也是可以的,就不做过多介绍。谈到循环,如果你是一个有基础的学者,相信你首先想到的一定使for循环,因为这个循环应用场景非常广泛,而且可读性高,深受大众喜爱;任何语言都有三个结构----顺序结构,循环结构,选择结构,这是毋庸置疑的。我们所说的循环分为三类,while,for,do-while循环。在日常生活中,日月交替,四季轮换,都是循环。
2023-10-22 22:37:45 41
原创 学习C语言目标
学习目标:三个月内熟练掌握C语言入门知识 达到 看代码就是看数据 的境界 能参加明年的蓝桥杯,并取得一定的奖项学习内容:掌握C语言的基本语法 能在力扣或洛谷上解决一些问题 跟着比特的学习路线,不断进步学习时间:周一至周五晚上 9点—晚11 点 周六上午 9 点-上午 11 点 周日下午 3 点-下午 6 点学习产出:技术笔记 2 遍 CSDN 技术博客 3 篇 研究经典的算法题
2023-10-11 21:33:14 47
原创 熬,数据储存
本章主要介绍,三码,大小端相关的知识。一、 三码是什么今天这个博客,是我亲手写的第一遍博客,说实话,真的写的很差劲,但我还是想要发出来,希望,有人能给我提出建议,我能更好的进步。
2023-10-04 02:11:45 82 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人