四川精神小伙
码龄4年
关注
提问 私信
  • 博客:65,677
    社区:1
    65,678
    总访问量
  • 30
    原创
  • 1,516,919
    排名
  • 10
    粉丝
  • 0
    铁粉

个人简介:四川人,四川魂,四川都是人上人

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:黑龙江省
  • 加入CSDN时间: 2020-10-22
博客简介:

apple_51801179的博客

查看详细资料
个人成就
  • 获得34次点赞
  • 内容获得5次评论
  • 获得249次收藏
  • 代码片获得135次分享
创作历程
  • 26篇
    2022年
  • 5篇
    2021年
成就勋章
TA的专栏
  • C++
    8篇
  • 数据库
    3篇
  • 系统
    3篇
  • Linux
    4篇
  • 笔记
    9篇
  • 网络
    4篇
兴趣领域 设置
  • 编程语言
    c++
  • 操作系统
    linux
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

C++内存分配

还有一些零散的东西没有介绍到,比如set_new_handler可以在malloc(需要调用set_new_mode(1))或operatornew内存分配失败时指定一个入口函数new_handler,这个函数完成自定义处理(继续尝试分配,抛出异常,或终止程序),如果new_handler返回,那么系统将继续尝试分配内存,如果失败,将继续重复调用它,直到内存分配完毕或new_handler不再返回(抛出异常,终止)。也就是说p就是数组的起始地址,这样程序看到的内存就是线性的,不包括前面的额外数据。...
原创
发布博客 2022.07.18 ·
720 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

C++静态函数和普通函数的区别

这两者的区别虽在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。具有自动存储期的变量在进入声明该变量的程序块时被建立,它在该程序块活动时存在,退出该程序块时撤销。这是统计函数被调用次数的最好的办法,因为这个变量是和函数息息相关的,而函数可能在多个不同的地方被调用,所以从调用者的角度来统计比较困难。当static用来修饰全局变量的时候,它就改变了全局变量的作用域(在声明他的文件之外是不可见的),但是没有改变它的存放位置,还是在静态存储区中。...
原创
发布博客 2022.07.18 ·
1988 阅读 ·
4 点赞 ·
0 评论 ·
13 收藏

extern关键字

extern是C语言中的一个关键字,一般用在变量名前或函数名前,作用是用来说明“此变量/函数是在别处定义的,要在此处引用”,extern这个关键字大部分读者应该是在变量的存储类型这一类的内容中遇到的,下面先分析C语言不同的存储类型在C语言中变量和函数有数据类型和存储类型两个属性,因此变量定义的一般形式为:存储类型 数据类型 变量名表;C语言提供了一下几种不同的存储类型:(1) 自动变量(auto)(2) 静态变量(static)(3) 外部变量(extern)(4) 寄存器变量(register)(
原创
发布博客 2022.07.13 ·
7178 阅读 ·
11 点赞 ·
0 评论 ·
66 收藏

MySQL视图和存储过程

一.视图:视图是虚拟的表,与包含数据的表不一样,视图只包含使用时动态检索数据的查询。我们要知道视图仅仅是用来查看别处的数据的一种设施。视图本身不包含任何数据,因此视图返回的数据都是从其他表中检索出来的。创建出来的视图用法其实和基本表一样,可以对其进行各种查询和过滤操作。下面看一个例子:创建了一个学生和课程的表的联结的视图,名为smy_view;CREATE VIEW smy_view AS SELECT student.*,sc.`C`,sc.`score` FROM student IN
原创
发布博客 2022.05.11 ·
2123 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

操作系统的虚拟内存

为什么不直接使用物理内存虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。现代所有用于一般应用的操作系统都对普通的应用程序使用虚拟内存技术,老一些的操作系统,如DOS和1980年代的Windows,或者那些1960年代的大型机,一般都没有虚拟内存的功能——维基百科读完上面的信息,我们可以得知,虚拟内存这个概念是后来才提出的,一开始并没有虚拟
转载
发布博客 2022.05.10 ·
402 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

操作系统的内存管理

通常物理内存的分配有两种方式,一种式连续分配方式,一种是离散分配方式(非连续分配)一.连续分配连续分配是指为一个用户程序分配连续的内存空间。连续分配有单一连续存储管理和分区式储管理两种方式。1.1单一连续存储管理:在这种管理方式中,内存被分为两个区域:系统区和用户区。应用程序装入到用户区,可使用用户区全部空间。其特点是,最简单,适用于单用户、单任务的操作系统。CP/M和 DOS 2.0以下就是采用此种方式。这种方式的最大优点就是易于管理。但也存在着一些问题和不足之处,例如对要求内存空间少的.
原创
发布博客 2022.05.09 ·
909 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

MySQL联结

一内连接查询· 含义:内连接(INNER JOIN) 使用比较运算符进行表间某(些)列数据的比较操作,并列出这些表中与连接条件相匹配的数据行,组合成新记录。简而言之,查找出同时存在在不同表中的关联数据形成结果表。· 用法:SELECT 字段1,字段2,字段3,…… FROM 表名1 INNER JOIN 表名2 ON 关联条件;等同于SELECT 字段1,字段2,字段3,…… FROM 表名1,表名2 WHERE 关联条件;· 注意事项① 如果某字段在多表中都有,则以"表名.列
原创
发布博客 2022.05.08 ·
301 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

MySQL聚集函数

1、定义聚集函数是以值是一个集合(集或者多重集)为输入、返回单个值得函数。SQL提供了五个固有聚集函数。平均值:avg最小值:min最大值:max总和:sum计数:count2.基本聚集以上五个固有聚集函数都是属于基本聚集3、分组聚集如果希望将聚集函数作用在单个元组集上,也希望作用到一组元组集上,此时可以利用group by子句来实现。group by 子句作用:对给出的一个或多个属性来构造分组,将属性上取值相同的元组分到同一组中。4、having子句有时候限定分
原创
发布博客 2022.05.07 ·
2060 阅读 ·
0 点赞 ·
0 评论 ·
16 收藏

makefile的简单编写

一.最简单makefile的编写1.makefile的命名:makefile2.makefile的规则:目标,依赖,命令 格式为:第一行为目标:依赖(目标就是你要生成可执行文件的名字,依赖就是要编译的文件)第二行,先开始有一个tab缩进。然后就是gcc的编译命令(注意开始有tab缩进)当编写完makefile之后直接make就可以执行编译文件。二.提升版makefile以上就是最简单的makefile的编写。但是很容易发现这种...
原创
发布博客 2022.05.06 ·
5981 阅读 ·
3 点赞 ·
0 评论 ·
16 收藏

Linux解压缩

一.1.whoami 查看当前登录的用户2.
原创
发布博客 2022.04.25 ·
99 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux 文件和目录操作

一.目录操作1.查看当前路径:pwd2.创建当前目录:mkdir 目录名 //mkdir test(创建一个名为test的目录)mkdir test/te -p (当创建复合目录时候要加参数-p)3.删除空目录:rmdir 目录名 //rmdir test(删除test目录)必需是空目录rm 目录名 -r(可以递归的删除一个非空目录,及删除目录及其子目录)二.文件操作1.创建文件:(如果文件不存在则创建文件,如果文件存在则修改文件的时间)touch 文件名2.rm 文..
原创
发布博客 2022.04.22 ·
1182 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏

Linux文件结构和快捷键

一.命令解析器:shell————unix系统 bash——linux操作系统本质:根据命令的名字,执行响应的程序二.Linux的快捷键:ctrl+a(光标移动至行首) ctrl+e(光标移动至行尾)删去光标前的字符(ctr)三.linux系统目录结构:根目录://bin:存放经常使用的命令的可执行程序/boot:开机启动项文件/dev:设备文件/etc:配置文件/home:所有用户的主目录/lib:存放的动态链接库/mnt:临时挂在文件系统(手动挂载)
原创
发布博客 2022.04.22 ·
307 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

grep 的用法

一.grep是什么Linux grep 命令用于查找文件里符合条件的字符串。grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。二.格式以及主要参数格式:grep [options] ‘pattern’ filename常用参数:-c:只输出匹配行的计数。 -i:不...
原创
发布博客 2022.04.20 ·
3099 阅读 ·
2 点赞 ·
0 评论 ·
7 收藏

建立TCP的客户端和服务端(Windows)

一.建立TCP的服务端1.加载库2.创建监听套接字3.绑定IP地址4.监听5.接受链接6.接收数据7.发送数据8.关闭套接字,卸载库#include<iostream>#include<stdio.h>#include<winsock2.h>#include <Ws2tcpip.h> using namespace std;#pragma comment(lib, "ws2_32.lib")int main()
原创
发布博客 2022.04.17 ·
3744 阅读 ·
2 点赞 ·
0 评论 ·
8 收藏

Windows建立UDP的客户端和服务端

一.UDP的服务端建立:udp服务端创建的步骤:1.加载库2.创建套接字3.绑定IP地址4.接收数据5.发送数据6.关闭套接字,卸载库代码如下:#include<iostream>#include<stdio.h>#include<winsock2.h>#include <Ws2tcpip.h> using namespace std;#pragma comment(lib, "ws2_32.lib")int
原创
发布博客 2022.04.17 ·
4670 阅读 ·
0 点赞 ·
0 评论 ·
19 收藏

TCP协议

7.缓冲区:操作系统会给每个进程分配空间,每创建一个套接字就会给套接字分配一个发送和接受缓冲区。sendto就是从发送缓冲区里拷贝数据,recvfrom从接受缓冲区拷贝数据查看接受缓冲区和发送缓冲区的大小:getsocket(sock,lebvel,optval,optlen);65536 64Ksendto:阻塞模式:如果缓冲区里没有足够的空间,就等到空间足够大正在把数据拷贝到发送缓冲区中非阻塞模式:如果缓冲区没有足够的空间就有多少拷贝多少,拷贝完立即返回,返回的是实际拷贝的字节数//1.
原创
发布博客 2022.04.16 ·
17072 阅读 ·
5 点赞 ·
1 评论 ·
57 收藏

关于子网划分

一.子网掩码:(在学习子网划分之前要先了解子网掩码)子网掩码是在IPv4地址资源紧缺的背景下为了解决lP地址分配而产生的虚拟lP技术,通过子网掩码将A、B、C三类地址划分为若干子网,从而显著提高了IP地址的分配效率,有效解决了IP地址资源紧张的局面。子网掩码是一个32位地址,它用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。也就是说子网掩码是由网络号和主机号组成的。网络号用1标识,主机号用0标识。实际网络上的IP地址是由实际IP地址和子网掩码相与的结果。默认子..
原创
发布博客 2022.04.10 ·
1620 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

头文件-源文件和宏

一.头文件:不参与编译,变量的声明,函数的声明,类的定义.源文件:自上而下独立编译,变量的定义,函数的定义,成员定义初始化头文件里放变量的声明不能放定义,因为当两个及以上的文件引用该头文件就会发生重定义的错误。函数也同理。extern int a;//变量的声明,注意不能赋值,如果赋值则为非法声明extern int a;//可以声明多份int b;//此为定义。//头文件中类的定义class te{public: int m_a; te(); void show1(
原创
发布博客 2022.04.04 ·
1481 阅读 ·
0 点赞 ·
1 评论 ·
7 收藏

C++常函数和继承的基础

一.const和常函数1.常量指针和指针常量const int* p1;常量指针:修饰的是指针所指向的空间,也就是不能更改(*p1)的值,但是可以改变指针的指向,也就是可以修改p1,也可以读取。不可以通过当前指针修改指向的空间但是可以通过其他方法。int* const p2=&a;//指针常量要初始化指针常量:const修饰的是p2指针,可以通过指针修改空间的值*p2 = 30。不能修改指针的值p2 = &b;是非法的const int* const ...
原创
发布博客 2022.04.04 ·
1005 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

C++类成员和静态成员

一.类对象的种类:1.栈区局部变量,遇到函数返回或者{}生命周期结束,自动回收。2.通过new创建的变量,需要通过delete手动回收3.全局变量:程序一开始创建就创建变量,程序退出(销毁)时候被回收,作用域为整个应用程序,可以跨文件.4.静态全局,生命周期和全局是一样的。作用域:只能在当前文件中使用,具有文件作用域5.静态局部变量,第一次调用包含这个对象的函数执行定义对象的代码,一直到程序结束销毁变量。调用了多次包含该对象的函数,对象不会重新创建(和局部栈区变量不一样)#i.
原创
发布博客 2022.04.04 ·
1221 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏
加载更多