自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 STL标准模板库

算法:以函数模板形式实现的常用算法,例如:swap、max、min、find、sort。容器:以类模板形式实现了常用的数据结构,例如:栈、队列、链式表、顺序表、红黑树。在[start,end)范围内找到了val,返回该val的指针或迭代器。迭代器:它是容器的成员,用于帮助访问容器中的元素,使用方法类似于指针。end:指向最后一元素的下一个位置的指针或迭代器。start:指向第一个元素的指针或者迭代器。val:用于初始化所有元素,不给默认为0。头文件:#include。val:待查找的关键数据。

2022-10-12 20:18:47 765

原创 C++智能指针、异常处理

当代码出错时,停止执行,返回一个数据C语言中调用者只能通过使用、接收返回值的方式处理错误、异常C++中可以接收自己返回或者系统返回的返回值,根据返回数据的类型不同,从而执行不同的错误、异常处理语句{public:};

2022-10-11 17:30:28 846

原创 C++函数模板、类模板

1、C/C++都是一种静态编程语言(编辑->预处理->编译->汇编->链接->可执行文件),静态编程语言的优点就是运行速度比较快,而缺点就是实现代码通用比较麻烦。是一种自动生成代码的技术,这种技术能让程序员在编写代码时不需要考虑数据类型,这种技术也称为泛型编程技术。一个template模版声明只能修饰一个紧跟着的函数。1、类模板:是一种使用未知类型来设计类的技术。可以给未知类型取任何名字,一般约定俗称写T。任务:实现一个通用的选择排序\快速排序。二、为什么需要使用模版。

2022-10-10 19:29:44 293

原创 C++I/O流文本文件、二进制文件读写

C++为文件IO流提供了两套设置文件位置指针的成员函数,目的为了兼容有两个位置指针的操作系统,但是UNIX\Linux和Windows系统底层只有一个位置指针,所以使用哪套都可以。fstream 对文件的读写操作,继承了ofstream\ifstream类的功能。ios::binary 以二进制模式打开文件。ios::in 为读取打开文件。ios::out 为写入打开文件。ios::trunc 覆盖存在的文件。ios::beg 文件开头。ios::cur 当前位置。

2022-10-10 19:24:43 561

原创 C++继承、虚函数、覆盖、多态、纯虚函数

C++继承、虚函数、覆盖、多态、纯虚函数。

2022-10-10 19:13:48 687 1

原创 【C++运算符重载】

【C++运算符重载】

2022-10-10 19:06:57 100

原创 【C++静态成员和单例模式】

2、虽然不能直接访问普通成员变量和普通成员函数,但是静态成员函数的作用域依然算作类内,因此只要让静态成员函数获得类对象的指针或引用,则依然有权限访问private、protected的普通成员变量、成员函数(相当于自己传一个this指针给静态成员函数)1、没有隐藏的this指针了,所以静态成员函数中无法直接访问普通成员变量和普通成员函数,但是可以直接访问静态成员变量和静态成员函数。3、提供一个获取静态类对象、指针的接口,设计静态成员函数用于获取静态类对象、指针。//类对象不用创建,也可以调用静态成员函数。

2022-10-10 19:00:15 281

原创 【C++拷贝构造、赋值函数、常函数】

【C++拷贝构造、赋值函数、常函数】

2022-10-10 18:58:12 230

原创 【C++函数重载、引用、类和对象介绍】

【C++函数重载、引用、类和对象介绍】

2022-10-10 18:37:48 170

原创 C++入门简介

本贾尼.斯特劳斯特卢普,于1979年4月在贝尔实验室负责分析UNIX系统的内核的流量情况,希望有一款更加模块化的工具,于1979年10月开始着手开发一种新的编程语言,在C语言的基础上增加了面向对象机制,这就是C++的来历,在1983年完成了C++的第一个版本C++与C的重要区别:1、C++完全兼容C的所有内容2、C++支持面向对象的编程思想和机制3、C++支持运算符重载、函数重载等编译时多态机制4、C++支持泛型编程、模板机制5、C++支持异常处理6、C++的类型检查更严格。

2022-09-22 20:51:46 471

原创 网络编程进程间通信socket套接字

基本特点:socket是一种接口技术,抽象成一个文件操作,可以让同一台计算机的进程之间通信,也可以让不同计算机的进程通信(网络通信)__kernel_sa_family_t sin_family;/* 地址簇 domain写什么这就写什么。addrlen:地址结构体的字节数,用于区分sockaddr_un还是sockaddr_in。底层需要借助socket文件,进行同一计算机下的进程间通信。返回值:成功返回0,失败返回-1;

2022-09-14 16:31:25 364

原创 Linux进程管理

对于子进程的结束而言,都希望父进程能够知道并作出一定的反应,通过wait waitpid 函数可以知道子进程时如何结束的以及它的结束状态码。管道是UNIX系统中最古老的进程间通信技术,古老意味着所有系统都支持,早期的管道是半双工通信,现有的系统管道是全双工通信。什么是进程间通信:是指两个或多个进程之间交互数据的过程,因为进程之间是相互独立的,为了进程间协同工作就必须实现进程间。注意:无论进程是如何结束的,它们最后都会执行同一段代码,会关闭所有打开的文件,并释放所有的内存。

2022-09-14 16:17:09 364

原创 【Linux信号处理】

1、忽略2、终止进程3、终止进程并产生core文件(记录内存映像)4、停止5、继续6、捕获并处理 (在信号发生前,先向内核注册一个函数,当信号来临时系统会自动执行该函数)

2022-09-08 20:45:21 1298

原创 Linux内存管理

2.系统层kernal kmalloc/vmalloc 调用驱动驱动 get_free_page程序是存储在磁盘上的可执行文件,当执行程序时,系统会把可执行程序加载到内存中,在内存中形成了进程(一个程序可以同时加载多个进程)进程的内存分布情况就是所谓的进程映像,从低地址到高地址依次分布为:3.虚拟内存1、系统会为每个进程分配4G的虚拟内存空间2、用户只能使用虚拟内存,无法直接使用物理内存3、虚拟地址与物理内存进行映射后才能使用 否则就会产生段错误4、虚拟地址与物理内存

2022-09-06 21:06:05 118

原创 【Linux文件相关操作】

1、删除源文件,只是删除了源文件的inode信息,硬链接不受影响,而软链接无法访问2、对于一个文件而言,硬链接数删除为0时,文件才被真正的删除3、当修改硬链接文件的内容,源文件也会被修改4、硬链接不能链接目录,软链接可以5、硬链接不能跨文件系统、软链接可以。

2022-09-06 20:58:13 685

原创 【Linux文件相关系统调用】

UNIX/Linux系统把所有的服务、设备等一切内容都抽象成了文件,并提供了一套简单而统一的接口,这部分接口就是系统文件读写调用,简称系统IO。每个打开的文件只要都有一个记录着读写位置的指针,叫做文件位置指针,所有对文件的读写操作都是从该指针的位置进行的,3、它代表了一个内核对象,因为内核不能暴露它的内存地址,不能返回真正的内核对象的地址,只能用文件描述符来对应。4、内核中有一张打开文件的表格,文件描述符是访问这张表的下标,因此也称为"句柄",相当于访问已打开文件的凭证。

2022-09-06 20:38:07 411

原创 Linux系统操作

最早版本与于1970~1973诞生于美国贝尔实验室,作者是丹尼斯.里奇和肯.汤普逊是最早的多用户、多任务、支持多种CPU架构、高安全性、高稳定性、高可靠性能够构建大型关键性业务系统的商用服务器、也能够支持嵌入式设备Minix操作系统是一种基于微内核架构的类UNIX计算机操作系统,并开放全部源代码给大学教学和研究工作,Linux之父林纳斯正是受到Minix的启发,才开发了第一个版本的Linux内核。

2022-09-06 20:22:58 506

原创 数组、矩阵、图的介绍

度:依附于顶点的边的数量称之为该顶点的度,有向图中,度分为出度(从该顶点出发的弧的数量)、入度(指向该顶点的弧的数量)生成树:顶点数为n,仅需要n-1条边的连通图,称之为生成树,如果给边配上权重,权重和最小的生成树称之为最小生成树。连通图:任意顶点之间都是连通的,称之为连通图,如果一个图中有n个顶点则至少需要 n-1 条边才能达到连通图。注意:不讨论顶点到自身的边,且不讨论重复的边,这种图统称为简单图,数据结构中只研究简单图。边的权重:图中的边附带有意义的数据,这些数据叫做边的权重,带权重的图也称为网。

2022-08-19 19:28:33 416

原创 二叉树介绍

定义:节点的度最多为2的树型结构。

2022-08-19 19:06:33 766

原创 数据结构入门介绍

1968年,美国高德纳教授,《计算机程序设计艺术》第一卷《基本算法》,开创了数据结构和算法的先河数据结构是研究数据之间关系和操作的学科,而非计算方法数据结构+算法=程序数据结构+算法=程序 美国沃斯提出 这句话揭示了程序的本质。...

2022-08-08 19:22:10 604

原创 C语言字符串介绍以及相关操作函数

程序并不是立即从键盘获取输入的内容,而是当按下回车后,终端输入的内容会先存储到输入缓冲区中,然后输入函数再从输入缓冲区中读取数据到内容中。程序中要输出显示的内容并不会立即显示到屏幕上,而是先存储在输出缓冲区中,当满足一定条件时才会从缓冲区中显示内容到屏幕上。从头开始,每个字符一对一进行比较,按照字典序,谁出现在前谁小,一旦比较出结果,立即返回结果,后面的不再比较。字符串字面值以地址形式存在,字符数据存在代码段,如果修改一定会产生段错误。功能比较两块内存的值,按照字节比较,一旦比较出结果后面不再比较。...

2022-07-25 22:36:41 669

原创 C语言中堆内存介绍和管理

堆内存是进程的一个内存段(text\data\bss\heap\stack),程序员手动管理,优点足够大,缺点使用麻烦定义n行,m列二维数组类型*arr[n];i

2022-07-22 20:48:06 656

原创 C语言指针入门详细介绍

指针是一种特殊的数据类型,使用它可以定义指针变量,指针变量存储的是整型数据,代表了内存的编号,通过这个编号可以直接访问对应的内存。

2022-07-18 20:34:47 440

原创 C语言进制转换以及原补反码位运算介绍

求余法:用2对数据求余,然后继续对商求余,直到商为0结束,该过程中产生的余数就是该数据的二进制(逆序)n%2==1\0商%2 ==1\0…直到商为0余数的逆序就是n的二进制求权法:从高位到低位,数据-2^(n-1)如果够减,那么第n位就是1,否则就是0,直到把数据减完为0128 64 32 16 8 4 2 186(01010110)72(01001000)112(01110000)176(10110000)每位的2^(n-1)求和10010010 145从低位开始,每三位二进制位对

2022-07-13 20:39:20 1053

原创 C语言函数入门介绍

一段具有某项功能的代码,是C语言中管理代码的最小单位把代码进行封装成一个个函数,可以方便管理和调用代码由C语言标准委员会为C语言以函数的形式提供的一些基础功能,被封装libc.so库中,使用时需要包含对应的头文件,通过对应的函数名(实参)方式即可调用标准库中的函数例如以下几个均为标准库中的函数2.系统函数是操作系统以函数接口形式提供的一些列功能,但是它不是真正意义上的函数有内存管理、文件管理、文件的输入输出、进程管理、信号处理、进程通信、线程管理、线程同步、网络通信等由第三方提供的开源或者收费的代

2022-07-13 20:15:13 82

原创 C语言做一个小迷宫

逻辑分析:具体实现代码://记录游戏开始时间//记录角色的位置坐标//获取方向键//判断是否到达出口

2022-07-11 20:12:02 246

原创 【C语言switch分支语句和循环语句】

switch开关分支语句for循环语句for循环各种写法:while循环语句do-while 循环语句循环嵌套循环语句中包含了循环语句外层循环执行一次,内存循环执行n次

2022-07-08 08:31:46 185

原创 C语言入门介绍

#include程序员所编写的代码不是标准C代码,需要一段程序把它翻译成翻译成标准C代码,负责翻译的程序叫做预处理器,翻译的过程叫做预处理,需要被翻译的代码叫做预处理指令,以#开头的代码叫做预处理指令main()函数:C语言以函数为单位管理代码,一个函数就是一段具有某一项功能的代码段main函数是程序的执行入口,必须有且只能有一个main函数int是一种数据类型,它表示main函数的执行结果是一个整数return 功能有两个:1、结束函数的执行2、返回一个结果给函数的调......

2022-07-07 08:42:39 904

原创 Linux中系统命令和vim文本编辑器基础知识

终端修改配置文件vim文本编辑器可以在终端下使用纯键盘操作的一款文本编辑器,号称编辑器之神,可以升级(二次开发),可以安装扩展正常模式的常用操作1.光标移动2.删除代码3.复制代码4.移动代码5.替换代码6.撤销操作正常模式进入插入模式的快捷键:插入模式的常用操作:1.Ctrl+p 自动补全 注意:多使用2.Ctrl+i 缩进,相当于tab键3.Ctrl+j/m 回车4.Ctrl+c 相当于E

2022-07-05 18:55:32 278

原创 linux系统命令总结01

3.目录相关命令4.网络相关命令远程登录:5.其他命令tar 压缩文件\解压文件-zcvf 压缩包名 要压缩的目录-zxvf 压缩包名 解压到当前目录下chmod 修改文件权限m = r(4) + w(2) + x(1)mmm = 自己、同组、其它所有用户一起改注意:目录必须拥有执行权限才能cd访问find 位置 条件 查询内容grep “关键词” 文件名过滤内容更新软件源:更新系统:关闭系统:重启系统安装软件:

2022-07-04 20:22:52 301 1

空空如也

空空如也

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

TA关注的人

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