![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
新手入门
文章平均质量分 75
A steria.
这个作者很懒,什么都没留下…
展开
-
数据结构--循环链表
为什么要有循环链表、循环链表定义、循环链表和单链表的图示对比、循环链表和单链表的代码对比、.循环链表的操作、clist.h、clist.cpp、初始化plist、往plist中头部插入数字val、往plist中的尾部插入数字val、在plist中查找val值,找到返回该节点地址,失败返回NULL、删除plist中的第一个val、判断plist是否为空链表(没有数据节点)、获取plist长度,数据节点的个数、获取plist链表的pos位置的值、获取val的前驱、.获取val的后继、输出plist的所有数据原创 2022-11-26 19:29:58 · 827 阅读 · 0 评论 -
Linux--信号量共享内存
信号量接口、信号量共享内存原创 2022-11-25 21:11:44 · 1353 阅读 · 4 评论 -
Linux--信号量
信号量是一个特殊的变量,一般取正数值。它的值代表允许访问的资源数目, 获取资源时,需要对信号量的值进行原子减一,该操作被称为p操作。当信号量值为0时,代表没有资源可用,p操作会阻塞。释放资源时,需要对信号量的值进行原子加一,该操作被称为v操作。信号量主要用来同步进程。 信号量的值如果只取0,1,将其称为二值信号量。如果信号量的值大于 1,则称之为计数信号量。原创 2022-11-24 20:11:56 · 504 阅读 · 0 评论 -
Linux--进程间通信、IPC、管道
1.管道简介|命令:举例:ps -ef|grep "sleep"两个进程通信,比如a,b进程,a向管道中写入数据,b读取数据;管道的分类:有名管道和无名管道区别:有名管道在任意两个进程间通信,无名管道在父子进程间通信;2.有名管道的创建创建的命令:mkfifo 管道名打开管道:open();读数据:read();写入数据:write();关闭管道:close();3.有名管道演示进程间通信思考如果进程 a 要将从键盘获取的数据传递给另一个进程 b, 用已具备的知识思考应该如何完成?原创 2022-11-22 20:53:18 · 117 阅读 · 0 评论 -
数据结构--不定长顺序表
1.不定长顺序表与定长顺序表相比不定长顺序表的区别在于我们可以通过扩容来进行增添元素的存储单元。2.结构是对定长顺序表的一种改进,在初始时开辟内存被利用完后,还要继续插入数据时,这时候据需要扩容。故顺序表的结构设计就要发生变化。原创 2022-11-21 21:20:29 · 248 阅读 · 0 评论 -
C++之函数模板、类模板、模板的特化
模板是c++的一种特性,允许函数或者类(对象)通过泛型(generic types)的形式表现或者运行,模板可以使得函数或类在对应不同的类型(types)的时候正常工作,而无需为每一种类型分别写一份代码。原创 2022-11-15 22:36:12 · 2746 阅读 · 0 评论 -
C++之static,静态变量
static的详解 关于初始化、内存、优点、指针、释放时机等问题。静态局部变量在全局数据区分配内存,局部变量在栈区分配内存。原创 2022-11-04 17:49:55 · 6462 阅读 · 0 评论 -
数据结构与算法--八大排序
1.基本概念:1.排序:2.需要掌握的点:3.稳定性:4.排序难点:2.分类:3.比较:1.稳定性:2.时间复杂度:3.空间复杂度:4.排序详解:1.选择排序--直接插入排序2.插入排序--希尔排序(Insert Sort)3.选择排序-简单选择排序(Simple selection sort)4.选择排序-堆排序(Heap sort)5.交换排序-冒泡排序(Bubble Sort)6.交换排序-快速排序(Quick-Sort)7.归并排序-(Merge sort)8. 基数排序(RadixSort)原创 2022-11-03 19:06:39 · 743 阅读 · 0 评论 -
Linux--信号signal、父子进程、SIGCHLD信号相关命令
Linux--信号signal、父子进程、SIGCHLD信号相关命令;信号名称 信号代号;15号信号和9号信号1.概念:2.信号的存储位置:3.常见的信号的值以及对应的功能说明:4.信号的值在系统源码中的定义:5.响应方式:6.改变信号的相应方式:(1)设置信号的响应方式:(2)默认:SIG_DFL;忽略:SIG_IGN;(3)默认响应方式:(4).自定义响应方式:(5)忽略:7.练习题目:8.15号信号和9号信号9.SIGCHLD信号(1)验证信号(2)处理僵死进程(wait结合信号)原创 2022-11-02 13:20:15 · 1452 阅读 · 0 评论 -
Linux--关于open、file、write、read、close的相关命令——操作文件的底层调用
Linux--操作文件的底层系统调用open:打开一个文件、read: 从文件中读取数据、write:向文件中写入数据、close:关闭文件、文件描述符、利用读写对文件进行负责、实现类似cp命令。原创 2022-11-02 12:17:51 · 1253 阅读 · 0 评论 -
Linux--bash、fork、exec、进程替换相关命令
Linux--bash、fork、exec、进程替换相关问题;bash详解、利用bash创建ps命令----execl的使用(结合fork)fork+exec()是Linux上创建新进程方式;原创 2022-11-02 12:08:15 · 582 阅读 · 0 评论 -
Linux--进程、进程替换、命令
注意,就是原来的程序换成了ps程序,但是PCB没有改变,但是PCB里面的有些值被修改了,比如pcb中程序的名字换成了新进程的名字;注意,"abc"可以, "/usr/bin/psxx"不可以;,如下:(2).execlp只给文件名,不需要给文件路径,可以去环境变量PATH所指的位置去搜索;echo $PATH(3).execle这个execle多了一个环境变量;(4).execvexecv系列把参数都放在了一个数组中,然后把这个数组传递进去即可;(5)execvp第一个参数只要文件名,原创 2022-11-01 21:51:55 · 381 阅读 · 0 评论 -
C++之函数指针、指针函数以及相关问题
指针、指针变量的定义、指针的分类、指针判定的右左法则、数组指针、指针数组、指针函数指针数组、函数指针、指针函数、扩展转移列表、函数指针数组考题原创 2022-11-01 21:31:14 · 381 阅读 · 0 评论 -
C++之运算符重载
1.运算符重载:1.可实现的对象2.定义运算符重载函数的一般格式:3.运算符的重载实际2.为什么要重载?3.前提:4.如何重载?5.默认6.指针作为数据成员7.字符串重载8.友元重载:重载输出原创 2022-10-31 21:09:28 · 505 阅读 · 0 评论 -
C++之函数重载
在C++中可以为两个或两个以上的函数提供相同的函数名称,只要参数类型不同,或参数类型相同 而参数的个数不同, 称为函数重载;函数重载的规则、函数重载的解析步骤原创 2022-10-31 19:43:34 · 1097 阅读 · 0 评论 -
C++之友元函数
友元函数:友元函数的定义、分类、三种友元函数举例,代码注意点,判断谁是谁的友元函数或类原创 2022-10-29 21:52:24 · 24187 阅读 · 5 评论 -
Linux--malloc、申请空间、申请是否成功、4G虚拟空间分布、父子进程相关代码及相关命令
1.进程在执行的过程中,malloc申请空间,不使用时,没有free就会出现内存泄漏;如果进程结束了,那么所有向操作系统申请的内存都会被回放(释放);2.申请1G或者更大空间,到底能不能成功?如果当前的物理内存剩余空间够用,那么申请的空间肯定能成功;如果物理内存不够,先看有没有虚拟内存,如果有,看虚拟内存加上物理内存能否满足申请的空间大小;sudo swapoff -a;关闭虚拟内存;sudo swapon -a;开启虚拟内存;3.32位操作系统进程的4G虚拟空间分布原创 2022-10-28 18:02:51 · 383 阅读 · 0 评论 -
Linux--文件、进程、fork、open、系统调用、库函数相关知识
Linux--文件、进程、fork、open、系统调用、库函数相关知识原创 2022-10-28 17:28:40 · 807 阅读 · 0 评论 -
C++深拷贝和浅拷贝
出现拷贝构造函数的原因、出现深拷贝的原因、深拷贝和浅拷贝的代码实现、代码分析、结果分析、执行过程分析、深拷贝和浅拷贝的区别、拷贝构造函数的总结原创 2022-10-24 19:55:31 · 556 阅读 · 0 评论 -
Linux--僵死进程(僵尸进程)
僵死进程产生的原因或者条件、僵尸进程展示、僵死进程的危害、如何解决僵尸进程、子进程的退出码原创 2022-10-17 23:22:41 · 4323 阅读 · 0 评论 -
C++之const
C++关于const:const作用在C中是只读,在C++中是常量1.const可以定义常量 const int a = 10;必须在声明的时候初始化2.const可以定义指针 指针本身 指针所指向的内容3.const可以修改函数形参--提高程序的可读性和健壮性 int strcmp(const char*str1,const char*str2) char *strcpy(char *dest,const char*src)4.const可以修饰成员函数--放在函数参数外面---原创 2022-10-17 18:29:01 · 550 阅读 · 0 评论 -
C语言--八大排序之希尔排序算法
希尔(shell)排序:分组后(间隔式的分组)利用直接插入排序简单来说就是,插入排序是间隔为一的数字之间进行比较,但希尔排序是间隔为gap的数字为一组,先进行一次插入排序,再不断缩小gap的值,重复以上操作。直到最后一个gap的值为1(分组数不是确定的,但在以后一定是1,才能保证有序)。最好的情况是序列基本有序,且分组数为1,时间复杂度为:O(n)。最坏的情况的时间复杂度:O(n)。(时间复杂度与选定的分组数有关)稳定性:不稳定原创 2022-04-14 20:53:08 · 155 阅读 · 0 评论 -
C++之析构函数
C++之析构函数,定义、示例;为什么有系统有析构函数,程序员还需要自己写?原创 2022-10-13 22:55:22 · 484 阅读 · 0 评论 -
编译原理——编写LEX文件:一个能识别所有运算式中包含的符号
编写LEX文件:一个能识别所有运算式中包含的符号:数字(0-9)+,变量(a-zA-Z)+,运算符:“+,-,*,/,(,)”。如输入(a+10)*b,输出: OPERATER:( WORD:a OPERATER:+ NUMBER:10 OPERATER:) OPERATER:* WORD:b原创 2022-10-13 19:57:46 · 4478 阅读 · 1 评论 -
Linux之gdb调试、gdb命令(全)
gdb调试、gdb命令(全!)执行、调试、加断点、调用、退出原创 2022-10-10 17:24:42 · 367 阅读 · 1 评论 -
C++基础之初始化、输入输出安全问题及常量问题
一.C++统一初始化: 初始化列表 解决方案例1:int main(){ int a = 10; int b = 10; int c{ 10 };//初始化列表 int arr[10] = { 1,2,4,5,6 }; int brr[10]{ 1,2,3,4,5,6 }; int crr[]{ 1,2,3,4,5 }; int drr[] = { 1,2,3,4,5 }; int* ip = NULL; int* is{ NULL }; return 0;原创 2022-05-11 00:06:24 · 201 阅读 · 0 评论 -
Linux--进程管理命令
linux 文件进程管理命令及演示原创 2022-10-04 00:15:00 · 89 阅读 · 0 评论 -
Linux--文件压缩、解压命令
Linux文件的压缩、解压、面试的部分考点原创 2022-10-03 18:10:48 · 395 阅读 · 0 评论 -
C++之构造函数基础
构造函数调用顺序、冒号函数特点、相关例题原创 2022-10-01 13:57:28 · 336 阅读 · 0 评论 -
C++关于类的大小、与class的区别等问题详解(附代码)
C++中关于类的定义、大小、隐藏指针、重载等问题的详解,内附可运行的代码!原创 2022-09-25 13:44:59 · 563 阅读 · 0 评论 -
Linux关于文件的命令
目录1.路径、目录命令(1)pwd:显示当前所在位置的绝对路径(2)cd系列(3)ls:(4)清屏2.创建、删除文件(1)目录文件(2)普通文件3.man帮助手册(1)代表命令(2)代表系统调用(3)代表库函数(按q退出)4.cp:拷贝文件(1)拷贝普通文件语法:(2)拷贝目录文件的语法:(3)拷贝+重命名的语法:5.mv:剪切文件(1)移动普通文件:(2)移动目录文件:(3)mv:剪切并重命名的语法:(4)重命名:原创 2022-05-30 00:04:26 · 2231 阅读 · 0 评论