- 博客(42)
- 收藏
- 关注
原创 day9.C++多态之虚函数
多态性主要通过虚函数(virtual functions)实现,它允许派⽣类重写基类中的⽅法,从⽽在运⾏时根据对象的实际类型来调⽤相应的函数。实现原理。
2026-08-10 19:55:15
179
原创 day7.c++继承
一、面向对象之前的内容总结1)C++特点C++是一门高级的 编译型,静态类型的编程语言,它支持面向过程编程,它支持面向对象编程,它还支持泛型编程。2)C++的基本数据类型C语言中学过的基础类型 + 布尔类型bool +引用类型 (数据类型&)3)C++的高级数据类型数组,结构体,枚举,联合体 + 类类型 +其他类型 (string ,list,map,vector等)说明:C++支持两种字符串类型,一种是从C语言继承过来的类型(用字符数组来表示字符串),新增string。
2026-08-09 21:55:29
145
原创 day4.面向对象编程
类是具有相同特征(数据万物)和行为(功能)的对象的抽象,不能直接使用 特征:被称为属性//C++对从C语言基础过来的结构体做了增强,允许在C++中增加函数成员;允许用户在定义结构体类型变量时,省略struct关键字//{// int age;//C++相对于C语言,人家主要增加了一个新的类型:类类型,本质上是结构体的加强版//1.类类型的定义,需要一个关键字class进行修饰,后根一个类名 {}里放的是类体。
2026-08-09 21:42:31
261
原创 day1. c++简介
C语⾔的表达能⼒极强,代码量相对较少既有⾼级语⾔的抽象能⼒,⼜有汇编语⾔的底层控制⼒运算符丰富,⽀持位运算等底层操作C语⾔⽣成的代码质量⾼,运⾏速度快没有多余的运⾏时开销(如垃圾回收、类型检查等)适合开发操作系统、驱动程序等对性能要求极⾼的软件⽤C语⾔开发的程序,基本上可以不作修改,直接移植到不同型号的计算机上运⾏ANSI C标准的制定确保了这⼀点既适合设计⼤型系统程序,⼜适合编写⼩型控制程序,也适⽤于科学计算。
2026-08-06 10:04:04
182
原创 二阶段总结
int sigaction(int signum, const struct sigaction *act, //主要对携带数据的信号进行绑定 该函数经常与 sigqueue()函数进行搭配。7) 如何来回收线程的资源:pthread_join() //阻塞主线程,实现父子线程同步;1)创建信号量或获取信号量 //int a;在一个进程中,每打开一个文件,系统内核会返回该文件的一个编号,这个编号就叫该文件的描述符,它是一个非负的正整数。
2026-08-04 20:58:17
215
原创 第7天 进程间通信
3,如果同一个目录中的进程需要超过 1 个 IPC 对象,可以通过第二个参数来标识。4,系统中只有一套 key 标识,也就是说,不同类型的 IPC 对象也不能重复。2,第一个参数一般取进程所在的目录,因为在一个项目中需要通信的几个进程通常会。1,如果两个参数相同,那么产生的 key 值也相同。出现在同一个目录当中。
2026-01-27 16:46:02
238
原创 第五天: 进程间通信
内核将信号产生之后,内核将信号添加到目标进程的挂起队列(私有和共享),并将信号集对应的位置为1,表示该信号处于挂起状态.内核在进程从内核态返回用户态时,检查我们的挂起队列中,是非有未阻塞的信号,如果有,则取出信号,根据注册的处理动作执行。信号本质是Linux中异步进程间通信的一个机制,用于通知进程发生了异步事件,其无需进程主动轮询,由内核触发处理。进程的信号集定义了当前阻塞的信号,若信号被阻塞,会留在挂起队列中,直到阻塞解除。无名管道随进程的退出而消亡,有名管道的文件持久存在于文件系统,需手动删除。
2026-01-21 19:34:31
314
原创 fork 和 exec函数
vfork强制子进程先执行,父进程会被阻塞,直到子进程调用exec函数簇,替换程序或调用exit退出。创建进程组的进程其PID = PGID,即使组长进程终止,进程组依然存在,直到组内所有进程全部结束.创建会话的进程,其PID = 会话 ID(SID),该进程不能是其他进程组的组长。一个或多个进程组的集合,会话由首进程创建,会话内所有进程共享一个控制终端。控制终端的进程组ID指向当前前台进程组,终端输入的信号会发送给前台进程组。一个会话包含多个进程组,进程组又分为前台进程组和后台进程组。
2026-01-21 19:30:43
325
原创 第一部分 程序与进程
进程是程序的一次动态执行过程,占用CPU,内存等系统资源,有生命周期一个程序可以对应多个进程一个进程在运行过程中,通常只对应一个程序。
2026-01-20 10:24:03
576
原创 一阶段c语言复习
内存的概念,浮点类型内存模型,大小端模式内存是由n个内存单元组成 每个内存单元占一个字节,每个内存单元占1字节,每个内存单元有其独立的内存地址.32位操作系统,其内存单元的个数:0xFF FF FF FF&num小端模式 :低存低 高存高。
2026-01-20 10:22:08
222
原创 数据结构01:链表
特性数组链表存储方式连续内存分散内存 + 指针随机访问支持 (O (1))不支持 (O (n))插入删除低效 (O (n))高效 (O (1))内存效率可能浪费空间有指针开销但利用率高大小固定动态数组中的数据我们称之为元素链表中的数据我们称之为节点每一个节点都是一个结构体,当前结构体包含两种信息数据(每个节点中所存储的信息)节点指针(保存下一个节点的信息)将节点插入链表 : 头插法 / 尾插法 / 中间插入节点对应结构体int num;
2025-07-22 17:43:04
680
原创 C语言基础13天:函数
我们在函数设计的过车体内各种, 经常要考虑对于参数的设计, 话句话说,我们需要考虑函数需要几个参数,需要什么类型的参数, 但我们并没有考虑是否需要提供参数, 如果说函数可以访问到已经定义的数据.则就不需要提供函数参数.则就不需要提供函数形参。建议在全局变量定义时初始化,如果不初始化,系统会对全局变量初始化(初始化0)如果全局变量(外部变量或全局变量)和局部变量同名,程序执行的时候,解释:定义在函数之外的变量,.也称之为外部变量或者全程变量。概念: 变量的作用范围,也就是说变量在什么范围有效.
2025-03-16 09:37:17
468
原创 C语言基础11天:函数
返回类型] 函数名([形参列表]) --函数头 | 函数首部函数体语句;--函数体,整个()包裹的内容包括返回值都属于函数体函数头:返回类型: 函数返回值的类型函数名: 函数的名称,遵循标识符命名(不能以数字开头,只能包含字母,数字,下划线,建议:小写+下划线命名法,举例:set_count())形参列表:用于接收主调函数传递的数据,如果有多个参数,使用分隔,且每一个形参都需要指明类型说明:double fun_a() //返回类型:doublereturn 12;
2025-02-20 19:26:37
664
原创 c语言基础10天:字符数组
功能:比较两个字符串对应位置字符ASCII的大小(字典顺序比较)注意:返回字符串中包含的字符的实际个数,不含。字符串可以是常量,也可以是字符数组。说明:这个函数适合给字符串赋值。
2025-02-20 09:31:32
558
原创 C语言基础第5天: 分支结构
若表达式的值为1 ,则执行语句1:否则执行语句2,不管条件表达式成不成立都要执行一个语句,其次需要注意的是,语句1和语句2都可以是但语句或者复合语句。实际上,逻辑运算符两侧的运算对象不但是0和1,或者是0和非0,而且也可以是字符型,实型和指针型等.系统最终是以0和非0来判断他们的真假的,例如。若表达式的值与某个常量表达式的值相等时,执行此case后面的语句:若没有相等的值时,执行default后面的语句。switch后括号内的表达式可以是任意类型的表达式,但是表达式的值必须是。
2025-02-18 09:27:32
951
原创 C语言基础第8天: 数组
数组是相同类型有序数据的啊集合类型说明符号/数组类型 数组名[数组容量]数组的类型说明符由数组的元素来决定,类型说明符也就是数据类型,元素是什么类型,数组就是什么类型, 同一个数组中,所有元素的类型都是一致的.数组名也是标识符,我们所说的数组(名), 大家可以理解为数据类型时数组的变量(名),命名规则与变量名相同,遵循标识符命名规则(标识符命名规则:不能以数字开头,只能包含数字.字母.下划线).数组容量也可以叫做常量表达式或者元素个数,其值必须为整型,可以包含常量和符号常量,但不能是变量。
2025-02-18 09:20:35
568
原创 C语言基础第9天:二维数组,字符数组,字符串
如果我们的char数组初始化的时候,没有完全初始化值的时候,r空出来的地方使用\0填充.大家要注意,\0只是起到占位的作用,无法通过printf进行输出。元素类型为char字符型的数组,字符数组往往是用来存储字符串数据的,需要注意的一点是,我们C语言中的字符是字节字符。 从键盘录入一个字符串常量到字符数组,返回字符数组的地址,(首地址,默认返回的地址,一般用12位16进制数表示)采用fgets进行字符串输入,可获取所有输入的字符串,包含\n,在实际的字符串处理时,我们可能需要处理。
2025-02-18 09:12:50
1034
原创 C语言基础第04天:数据的输出和输出
C程序是以函数为基础单位的一个函数的执行部分是若干条语句C语句都是用来完成一定的操作任务C语句必须依赖于函数存在。
2025-02-10 17:21:16
1239
原创 C语言基础02天:变量\基本类型数据\运算符
由此可见,在内存中字符数据的存储形式与整型数据类似,这就使得字符数据和整型数据之间可以通用,也就是1个字符数据既可以字符形式输出,也可以以整数形式输出。说明:一个字符变量只能存储一个字符,c编译系统规定以一个字节的存储空间来存放一个字符,因此一个字符型变量在内存中的大小是一个字符。关键字:有32个,系统有特定的含义和用途,如:float,int,if,else等,不能用作定义标识符(变量和函数)用户标识符:用户定义的标识符,用来给程序的变量,自定义函数,符号常量,数组,构造类型,文件等命令。
2025-01-21 17:25:20
1096
原创 C语言基础01天:C语言概述 / 数据类型 / 常量与变量
数据类型其实是固定大小内存的别名。并且描述了一个变量存放什么类型的数据。简单来说,就是组织和操作数据数据:计算机要处理的数据(数字、字符串、文字、符号、图片、音频、视频等)数据类型不仅帮我们组织和操作数据,还决定了程序如何有效的利用内存了解数据类型的内存需求是理解计算机管理和操作数据的关键小贴士:程序的运行需要用到内存。内存存储容量单位字节:计算机存储的一种单位(C语言中一般都是以字节为单位进行存储空间的计算),一般应用层最小存储单元的表示。
2025-01-20 20:05:22
1150
原创 Linux基础05天:vim编辑器/其他指令
Linux中的根目录以外的文件想要被访问,就需要将其关联linux系统中的某个目录来实现,我们将这种关联操作称之为“挂载”,这个目录就是“挂载点”,Linux专门提供了一个用于挂载外设的目录,叫做“/mnt”解除此关联关系的过程称之为“卸载”文件的挂载指令fdisk说明:查看所有磁盘列表,包括linux自身+外部存储设备(查询所有可挂载的文件系统,对应的文件系统都会在/dev下产生一个对应的设备文件)mountmount [选项] 文件系统(设备名)挂载点(目标文件夹)
2025-01-17 19:47:38
779
原创 Linux基础04天:压缩与解压缩 / vim
本质上我们用Linux自带的编辑器叫做Vi编辑器(类似于win的记事本,一般用来做文件的编辑),名字取自Visual,它是一个全屏幕的文本编辑器(程序)。在Linux系统中Vi是最常用的编辑程序,他的文本编辑功能十分强大,但用起来比较复杂。Vim是Vi的增强版,所以Vi的功能Vim都有,而且Vi的功能Vim都有,而且Vim新增了Vi没有的功能,他比Vi更容易使用。这个工具不是Linux内置,需要额外的安装。
2025-01-16 18:52:16
1332
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅