自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

C/C++编程指南

C/C++/数据结构算法/Qt/MFC/MySQL/Redis/Linux开发

  • 博客(89)
  • 资源 (3)
  • 收藏
  • 关注

原创 CMakeList入门到精通教程(这篇就足够啦)

CMakeList入门到精通教程(这篇就足够啦)

2024-11-04 16:28:58 1904

原创 数据结构8:栈和队列实战详解

栈(Stack)和队列(Queue)是两种基本的数据结构,它们在计算机科学中有着广泛的应用。下面是它们的主要功能、应用范围以及C语言的简单实现代码。

2024-07-08 16:50:28 220

原创 数据结构7: 循环链表(约瑟夫环)的建立及C语言实现

循环链表和动态链表唯一不同在于它的首尾连接,这也注定了在使用循环链表时,附带的最多的操作就是遍历链表。在遍历的过程中,尤其要注意循环链表虽然首尾相连,但并不表示该链表没有第一个节点和最后一个结点。所以,不要随意改变头指针的指向。

2024-07-08 16:46:06 308

原创 数据结构6: 静态链表及C语言实现

数据结构6: 静态链表及C语言实现

2024-07-08 16:42:52 741

原创 C++23种设计模式之《享元模式》

C++23种设计模式之《享元模式》

2024-06-27 15:08:38 314

原创 C++23种设计模式之《代理模式》

C++23种设计模式之《组合模式》

2024-06-27 15:07:34 225

原创 C++23种设计模式之《组合模式》

C++23种设计模式之《组合模式》

2024-06-27 15:04:53 281

原创 C++23种设计模式之《外观模式》

C++23种设计模式之《外观模式》

2024-06-27 15:03:00 155

原创 C++23种设计模式之《原型模式》

C++23种设计模式之《原型模式》

2024-06-27 14:57:25 230

原创 C++23种设计模式之《适配器模式》

C++23种设计模式之《适配器模式》

2024-06-27 14:49:45 929

原创 C++23种设计模式之《建造者模式》

C++23种设计模式之《建造者模式》

2024-06-27 14:48:00 355

原创 C++23种设计模式之《策略模式》

C++23种设计模式之《策略模式》

2024-06-27 14:46:45 353

原创 C++23种设计模式之《单例模式》

C++23种设计模式之《单例模式》

2024-06-27 14:44:26 339

原创 C++23种设计模式之《工厂模式》

C++23种设计模式之《工厂模式》

2024-06-27 14:40:29 576

原创 数据结构5:静态链表的基本操作及c语言实现

逻辑结构上相邻的数据元素,存储在指定的一块内存空间中,数据元素只允许在这块内存空间中随机存放,这样的存储结构生成的链表称为静态链表。静态链表和动态链表的区别:静态链表限制了数据元素存放的位置范围;动态链表是整个内存空间。

2024-06-20 15:10:00 761 2

原创 数据结构4:单链表的基本操作及c语言实现

链式存储的数据元素在物理结构没有限制,当内存空间中没有足够大的连续的内存空间供顺序表使用时,可能使用链表能解决问题。(链表每次申请的都是单个数据元素的存储空间,可以利用上一些内存碎片)链表中结点之间采用指针进行链接,当对链表中的数据元素实行插入或者删除操作时,只需要改变指针的指向,无需像顺序表那样移动插入或删除位置的后续元素,简单快捷。链表和顺序表相比,不足之处在于,当做遍历操作时,由于链表中结点的物理位置不相邻,使得计算机查找起来相比较顺序表,速度要慢。

2024-06-20 14:52:03 954

原创 数据结构3:线性表及顺序表存储结构(c语言实现)

线性表是数据结构中最简单的数据存储结构,可以理解为“线性的表”。线性,是说数据在逻辑结构上具有线性关系。将具有线性关系的数据存储到计算机中所使用的存储结构称为线性表。线性关系指的是数据一个挨着一个,总体呈线性分布。就好比“老鹰捉小鸡”游戏中,小鸡们全都手拉着手,它们之间的关系就可以称为线性关系。换句话说,线性表中的数据在逻辑结构上相互挨着(手牵手),中间没有空隙。每个数据元素,在它的前面可以找到唯一一个数据和它挨着,后面也只有一个数据和它挨着。

2024-06-20 14:39:44 661

转载 数据结构2:算法时间复杂度和空间复杂度的计算

数据结构2:算法时间复杂度和空间复杂度的计算

2024-06-14 17:51:29 595

原创 数据结构1:算法概述

数据结构1:算法概述

2024-06-14 17:49:07 568

原创 数据结构0:剖析红黑树

数据结构算法,红黑树

2024-06-14 17:44:12 624

原创 如何处理缓存失效、缓存穿透、缓存并发等问题

比如我们可以在原有的失效时间基础上增加一个随机值,比如1-5分钟随机,这样每一个缓存的过期时间的重复率就会降低,就很难引发集体失效的事件。出现场景:指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。出现场景:当网站并发访问高,一个缓存如果失效,可能出现多个进程同时查询DB,同时设置缓存的情况,如果并发确实很大,这也可能造成DB压力过大,还有缓存频繁更新的问题。

2024-05-30 16:04:39 300

原创 Mysql从入门到精通整理

Mysql从入门到精通整理

2024-05-30 16:01:49 798

原创 C++经典面试题(全网最全,面中率最高)

C++经典面试题(全网最全,面中率最高)

2024-05-30 15:35:10 1690

原创 Visual studio 2022代码出现绿色波浪线

2:【配置属性】-->【C/C++】-->【常规】-->【警告等级-关闭所有警告(/W0)】和【SDL检查-->否(/sdl-)】1:【工具】-->【文本编辑器】-->【C/C++】-->【禁用Code Analysis波浪线设置为true】1:在工程项目右击打开【属性页】

2024-03-22 22:12:27 1978

原创 Wireshark网络封包分析工具介绍+过滤器表达式语法

wireshark的过滤项是“协议“+”.“+”协议字段”的模式。比如ip.addr == 192.168.1.1,这条表达式中ip.addr是过滤项、==是过滤关系,192.168.1.1是过滤值(整条表达示的意思是找出所有ip协议中源或目标ip、等于、192.168.1.1的数据包)冒号前的英文是协议字段的名称;显示过滤器作用在wireshark捕获数据包之后,依据显示过滤器表达式,对捕捉到的数据包依据协议或包的内容进行过滤,从已捕获的所有数据包中显示出符合条件的数据包,隐藏不符合条件的数据包。

2023-02-17 21:30:27 1367

原创 Qt项目实战笔记--从零开始搭建库存管理系统(六)使用QSqlTableModel实现数据的增删改查

Qt项目实战笔记--从零开始搭建库存管理系统(五)使用QSqlTableModel实现数据的增删改查

2023-02-03 22:14:06 1918

原创 Qt项目实战笔记--从零开始搭建库存管理系统(五)数据库的连接、读写

Qt项目实战笔记--从零开始搭建库存管理系统(五)数据库的连接、读写

2023-02-03 22:09:10 1638

原创 Qt项目实战笔记--从零开始搭建库存管理系统(四)UI框架搭建

Qt项目实战笔记--从零开始搭建库存管理系统(四)UI框架搭建

2023-02-03 22:04:15 889 6

原创 Qt项目实战笔记--从零开始搭建库存管理系统(三)UI框架搭建

Qt项目实战笔记--从零开始搭建库存管理系统(三)UI框架搭建

2023-02-03 21:59:24 1526

原创 Qt项目实战笔记--从零开始搭建库存管理系统(二)产品设计

Qt项目实战笔记--从零开始搭建库存管理系统(一)产品设计

2023-02-03 21:55:34 1248

原创 Qt项目实战笔记--从零开始搭建库存管理系统(一)准备工作

Qt项目实战笔记--从零开始搭建库存管理系统(一)准备工作

2023-02-03 21:50:42 867

原创 第三方支付备付金

第三方支付备付金

2023-02-03 21:45:34 920

原创 支付系统架构分析

支付系统

2023-02-03 21:43:48 830

原创 Linux下c语言多线程编程

两条线程看谁先抢到这个锁,也是竞争在抢锁,如果是th1先抢到,那锁就是th1的了,拿到锁的线程就很自私,接下来锁里面的代码就是th1自己一个人的,th2就不能来读这段代码了,th2没抢到锁的话它自己是不会去自己加个锁的,th2只能靠边站了,等th1先走完了锁里的代码,然后解锁了,再轮th2,加锁可以保证两条线程不会去抢着读数据,导致结果出错。CPU就立刻去执行剩下的线程二,直到执行结束。锁初始化函数有两个参数,第一个参数就是我们定义的锁,第二个参数是互斥锁的属性,写NULL就可以了,代表默认的快速互斥锁。

2023-01-31 14:32:52 727

原创 深入理解Linux内核:内存寻址

深入理解Linux内核,内存寻址

2023-01-31 14:24:17 1054

原创 剖析Linux操作系统01:基本概述

3.1.1 进程管理3.1.2 内存管理3.1.3 文件管理3.1.4 信号处理3.1.5 进程间通信3.1.6 网络通信。

2023-01-31 13:53:30 143

原创 一篇20000个字精通Linux套接字编程

我们已经知道,内存中的多字节数据相对于内存地址有大端和小端之分。网络数据流的顺序:先发出低地址的数据,后发出高地址的数据。TCP/IP协议规定,网络数据流应采用大端字节序(低地址高字节)。如果本地主机是小端字节序的,则需要考虑网络字节序和主机字节序的转换问题。为使网络程序具有可移植性,使同样的C代码在大端和小端计算机上编译后都能正常运行,可以调用以下库函数做网络字节序和主机字节序的转换。// 本地字节序转网络字节序(IP)// 本地字节序转网络字节序(Port)

2023-01-28 19:21:02 263

原创 ovs原理与实践

相比于其它虚拟交换机/网桥(例如docker0和普通的linux bridge),ovs有着更加丰富的功能和生态,目前在openstack和kubernetes容器网络(ovn-kubernetes、kube-ovn)都能看到它的身影。本文仅仅简单介绍了ovs的基本原理和单机使用,后续会更新ovs跨主机隧道通信和ovn/ovs等内容,敬请期待。

2023-01-14 22:24:47 2958 1

原创 TIOBE12月编程语言榜发布:C++首超Java!

TIOBE12月编程语言榜发布:C++首超Java!C语言经典算法100道实战题

2022-12-07 17:36:18 1089

原创 IP分片报文的接收与重组

IP分片报文的接收与重组

2022-08-12 18:05:40 1600

ATL编程技术

适合初级和中级软件工程师参考的资料,以前做软件开发之前学习的文档资料,现。

2015-01-29

空空如也

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

TA关注的人

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