自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Boost Aiso笔记(附代码示例)

起源于Boost库,是一款专为网络I/O、定时器、串行端口通信设计的库,提供了同步和异步的编程模型,用以简化网络和低级I/O的操作。它的设计初衷是提供一套简洁、一致且功能全面的接口,以满足开发者在多样化网络编程场景下的需求。

2025-08-19 16:07:35 903

原创 文件内容相关笔记(自用留)

文件内容自用笔记,可以忽视

2025-08-12 21:17:47 286

原创 Qt实现目录统计工具:递归扫描文件与可视化展示

本文介绍了一个基于Qt框架开发的目录统计工具,能够递归扫描指定目录并统计文件/目录数量、代码行数等信息。工具核心包括DirectoryScanner类(实现递归扫描和行数统计)和DirectoryStats结构体(存储统计信息),支持可视化展示文件类型分布(饼图)和结果保存功能。通过QtCharts实现数据可视化,界面包含路径输入、结果展示和图表显示等功能。该工具可帮助开发者快速了解项目结构,技术要点包括Qt文件操作、递归算法和界面设计。文章提供了完整实现代码,可作为基础进一步扩展功能。

2025-08-12 21:03:24 616

原创 进程与线程笔记(自用)

本文摘要:介绍了进程与线程的基本概念及编程实现。进程作为程序执行的容器,包含CPU、内存等资源;线程是进程中的独立执行单元,可共享全局变量。重点讲解了POSIX线程库(pthread)的使用,包括线程创建(pthread_create)、等待(pthread_join)等函数。通过素数计算实验展示了多线程性能提升效果,并对比了不同线程数下的执行时间。同时介绍了线程同步机制(信号量、互斥锁、条件变量等)和进程间通信方式(管道、信号、共享内存等)。最后给出多个实践任务,包括文件统计、停车场模拟等,以巩固多线程编

2025-08-07 09:49:06 894

原创 I/O复用自用笔记

多路复用(Multiplexing)是一种高效的 I/O 处理技术,可以让单个进程/线程同时监控多个文件描述符(如套接字),并在它们就绪时进行读写操作,而不需要为每个连接创建单独的线程。# epoll_ctl(epoll_fd, OP ,s_fd,&event):对s_fd相关描述符和事件进行op操作。数组存储文件描述符,上限默认1024,遍历集合O (n),三个集合(读,写,异常),跨平台,select。##### 3.epoll() 时间轮询,O(1),不跨平台(Linux)

2025-08-07 09:46:58 392

原创 归并排序的实现(C)

归并排序是一种基于分治思想的排序算法。其核心流程分为分解和合并两个阶段:首先将数组递归二分到单个元素,然后通过双指针法将相邻有序子序列合并。算法实现包含两个关键函数:mergeSort负责递归分解,merge完成有序合并。合并过程使用临时数组存储中间结果,再回写至原数组。该算法时间复杂度为O(nlogn),空间复杂度O(n)。在实际应用中,临时数组可采用栈或堆分配方式,需根据数据规模选择合适的内存管理策略。归并排序适合处理大规模数据,是一种稳定的高效排序方法。

2025-07-21 17:03:53 435

原创 使用c实现文件统计功能

本文介绍了使用C语言实现类似Linux系统中wc命令的三种功能:字符统计、单词统计和行数统计。字符统计通过fgetc()逐字符读取并计数;单词统计通过标记连续非空白字符的方式计数;行数统计则使用fgets()逐行读取。文章详细说明了各功能的实现原理,包括文件指针重置的必要性,并提供了完整的代码示例。代码通过主函数接收文件名参数,依次调用三个统计函数,最后展示了编译和运行方法。该实现有助于深入理解文件操作函数的使用。

2025-07-12 12:30:10 821

原创 线性表篇之顺序表(使用c实现)

线性表的顺序存储结构是最常用的存储方式,它直接将线性表的逻辑结构映射到存储结构上,即易于理解又容易实现。

2025-03-15 18:21:28 1062

原创 二叉树的翻转(镜像)

赋给根节点的左子树的根结点也就是pRoot->left,同时递归调用Mirror()将右子树的所有子树都进行交换,最后将pr存储的左子树的根节点赋给右子树的根节点也就是pRoot->right,到这里整颗树交换就已经完成了。,pr用来临时储存左子树根节点的地址,于此同时递归调用Mirror函数将其左子树的左右子树进行交换,将交换后的数的根节点返回。函数来翻转当前节点的右子树,并将返回的新的根节点(右子树的镜像)赋值给当前节点的左子指针。: 在完成当前节点的左右子树交换后,返回当前节点作为新的子树的根节点。

2024-11-30 23:31:45 1610

原创 栈的简单入栈,出栈,输出栈顶的实现

栈的简单入栈,出栈,输出栈顶的实现,内附题目和代码实现~

2024-11-21 23:12:29 1228

空空如也

空空如也

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

TA关注的人

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