自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL基本查询

本文介绍了MySQL表的增删改查(CRUD)操作。重点讲解了Create操作,包括单行全列插入、多行指定列插入、冲突时更新(ON DUPLICATE KEY UPDATE)和替换(REPLACE)四种插入方式。在Retrieve部分,演示了全列查询、指定列查询和表达式查询三种数据检索方法。文章通过学生表(exam_result)的具体实例,展示了各种SQL语句的语法和使用场景,为数据库基础操作提供了实用参考。

2025-12-24 21:39:35 1080 9

原创 应用层协议HTTP

本文介绍了HTTP协议的基本概念和工作原理。HTTP是应用层协议,基于TCP,用于客户端与服务器间的通信,具有无连接、无状态的特点。详细讲解了URL的结构与编码规则、HTTP请求与响应的格式组成,包括首行、报头和正文部分。对比分析了GET和POST两种主要方法的特点与区别,GET通过URL传参,POST通过请求体传参更私密。最后列举了常见的HTTP状态码及其含义。全文系统地阐述了HTTP协议的核心要素,为理解网络通信基础提供了重要参考。

2025-12-23 18:57:51 1042 11

原创 MySQL表的约束

通过表的约束,让我们未来插入数据库表中的数据是符合预期的。约束的本质是通过技术手段,让我们插入正确的数据,目标是保证数据的完整性和可预期性。

2025-12-21 18:17:18 799 10

原创 MySQL数据类型

本文介绍了MySQL中的数据类型分类,重点讲解了数值类型的使用规范。主要内容包括:1)整型tinyint的有符号和无符号范围,强调MySQL对越界值的严格约束;2)bit类型的存储特点及其二进制表示方式;3)float类型的小数精度控制,演示了四舍五入规则和无符号限制。文章通过具体SQL示例展示了各类型的取值范围约束和存储特性,并指出float类型可能存在精度损失问题。

2025-12-20 00:30:05 669 1

原创 MySQL表的操作

本文介绍了MySQL数据库表的创建、查看和修改操作。主要内容包括:1)使用CREATE TABLE语句创建表,可指定字段类型、字符集、校验规则和存储引擎;2)通过SHOW TABLES查看当前数据库的表,使用DESCRIBE查看表结构,SHOW CREATE TABLE显示创建语句;3)ALTER TABLE修改表名,以及向表中插入数据。文章还比较了MyISAM和InnoDB存储引擎在文件存储上的区别,并提供了详细的SQL示例说明各个操作的使用方法。

2025-12-19 00:03:52 486 2

原创 MySQL库的操作

可以查看当前有哪些用户连接到我们的MySQL,如果查出某个用户不是你正常登陆的,很有可能你的数据库被人入侵了。发现自己数据库比较慢时,可以用这个指令来查看数据库连接情况。字符集和校验规则时,系统使用默认字符集:utf8mb3,校验规则是:utf8mb3_general_ci(当然,这具体取决于你的配置文件)-B表示 --databases,意思是备份指定的整个数据库(包括数据库中的所有表)以及数据库本身的信息(如创建数据库的语句)/ 这个不是注释,表示当前mysql版本大于4.01版本,就执行这句话,/

2025-12-18 13:24:15 948 2

原创 MySQL数据库基础

在LInux系统下,文件就能够存储数据,为什么还需要数据库来专门存放数据呢?一般的文件确实提供了数据的存储功能,但在用户角度来看,文件并没有提供非常好的数据管理能力。如进行数据查找时需要遍历整个文件,效率低下,且存在安全问题。数据库能更有效的管理数据----提供了一套对数据内容存储管理的解决方案。

2025-12-17 21:29:28 1307 5

原创 Linux编程网络基础(四)

本文主要介绍了应用层协议中的序列化与反序列化技术及其重要性。首先解释了应用层协议的作用,即通过统一数据格式实现跨平台通信。其次,分析了TCP协议支持全双工通信的原理,包括发送/接收缓冲区的分离机制。然后对比了面向字节流和面向数据报两种传输方式的特性差异。最后以Jsoncpp为例,详细展示了JSON数据的序列化和反序列化实现方法,包括多种写入方式和解析JSON字符串的代码示例。这些内容为理解网络通信中的数据格式转换提供了实用参考。

2025-12-16 19:39:19 736 3

原创 Linux编程网络基础(三)----Socket

Socket编程摘要:本文介绍了Socket编程的基本概念,包括本地Socket和网络Socket两种类型,以及常见的Socket API。重点展示了UDP和TCP两种协议的编程实现:1) UDP实现了一个简单的回显服务器,服务器需要显式绑定端口,而客户端由系统自动分配端口;2) TCP实现中,服务器通过socket-bind-listen-accept流程建立连接,支持地址重用选项。两种实现都包含了完整的服务端和客户端代码示例,演示了基本的网络通信模式。

2025-12-15 21:25:09 851 3

原创 Linux编程网络基础(二)

本文介绍了网络通信中端口号、套接字和传输层协议的关键概念。端口号作为2字节整数,用于标识主机上的特定进程,与IP地址共同构成套接字(Socket),形成网络通信的基础。端口号分为知名端口(0-1023)和动态分配端口(1024-65535),与进程ID不同,它是网络通信的标准化标识。传输层协议(TCP和UDP)通过系统调用实现网络通信,TCP提供可靠连接,UDP则无连接且不可靠。网络字节序采用大端模式,确保不同主机间的数据兼容性,相关转换函数(如htonl)处理主机与网络字节序的转换。

2025-12-14 21:22:36 707 1

原创 Linux编程网络基础(一)

其中每一层的有效载荷是上一层传下来的数据,例如下图的传输层中,报头为传输层报头,有效载荷为应用层报头+“你好”;路由器通常有两个网卡,当主机A发现不是发给自己局域网主机的报文时,就将报文发送给路由器,由路由器传给下一个网段。TCP/IP通讯协议采⽤了5层的层级结构,每⼀层都呼叫它的下⼀层所提供的⽹络来完成⾃⼰的需求.在⽹络传输的过程中,数据不是直接发送给对⽅主机的,⽽是先要⾃顶向下将数据交付给下层协议(),最后由底层发送,然后由对⽅主机的底层来进⾏接受,在⾃底向上进⾏向上交付(在双方通信中,要进行报文的。

2025-12-13 21:37:50 1196

原创 C++中的多态

本文介绍了C++多态的核心概念与实现原理。多态分为编译时多态(函数重载)和运行时多态(虚函数机制)。通过基类指针/引用调用虚函数时,会根据实际对象类型决定调用哪个版本的函数,实现动态绑定。重点分析了虚函数表的工作原理:每个包含虚函数的类都有一个虚表指针,指向存储虚函数地址的虚表。派生类虚表会覆盖基类虚函数地址,实现函数重写。文章还探讨了协变、析构函数重写等特殊情况,以及final和override关键字的使用。最后通过内存布局图展示了多态的实现机制,说明虚函数调用是通过虚表间接寻址完成的。

2025-12-12 18:24:19 1260 6

原创 C++中的继承

摘要:本文介绍了C++中继承的基本概念、定义和使用方法。继承是面向对象编程的三大特征之一,允许子类在保持父类特性的基础上进行扩展。文章详细讲解了继承的三种方式(public、private、protected)及其访问规则,基类和派生类对象间的赋值转换(切片操作),以及继承中的作用域问题(成员隐藏)。此外,还阐述了派生类默认成员函数的调用规则,包括构造函数、拷贝构造函数、赋值运算符和析构函数的执行顺序。最后指出友元关系不能被继承的特性。通过代码示例帮助理解继承机制的实际应用。

2025-12-11 21:52:24 670

原创 实现一个异步操作线程池

本文介绍了使用C++11标准库实现异步操作线程池的核心技术。主要内容包括: 关键C++11异步编程组件: std::future:表示异步操作结果 std::async:简化任务与future关联 std::packaged_task:将任务和future绑定 std::promise:手动设置future值 线程池设计思路: 使用packaged_task和future组合实现 主要管理任务池、互斥锁、条件变量和工作线程 提供任务入队和停止运行等操作接口 具体实现要点: 构造函数初始化工作线程 线程入口函

2025-12-08 21:14:13 1435 1

少儿编程资料.zip

少儿编程资料.zip

2023-10-10

空空如也

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

TA关注的人

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