自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用protobuf编译提示无法打开包括文件: ‘absl/log/absl_log.h’: No such file or directory

3、找到生成的visual studio 的sln 后缀文件使用visual studio 2019 打开编译。,可能是因为 Abseil 未正确安装或未在项目中设置包含路径。2、使用CMake生成Visual Studio 项目。Protobuf 3.20+ 版本开始依赖。,但你的系统未正确安装或配置 Abseil。使用手动编译Abseil源码的方式。安装Abseil 库。

2025-04-07 15:07:14 136

原创 判断质数,使用多线程和信号量

【代码】判断质数,使用多线程和信号量。

2025-03-28 19:46:28 88

原创 令牌桶的实现 使用多线程信号量实现

【代码】令牌桶的实现 使用多线程信号量实现。

2025-03-28 19:43:31 100

原创 令牌桶的实现 使用多线程互斥量实现

【代码】令牌桶的实现 使用多线程互斥量实现。

2025-03-28 19:12:19 134

原创 c#学习(004)类、对象、类成员的简介

类或对象通知其他类或对象的机制,为c#所持有(Java通过其他方法实现这个机制)绑定(Binding)指的是编译期如果把一个成员与类或对象关联起来。静态(Static)成员在语义上是表示他是"类的成员"实例(非静态)成员在语义上表示它是"对象的成员"存储数据,组合起来表示类或对象当前的状态。通知类或对象重在事件,如各种Timer。二、对象也 叫实例,是类经过实例化后得到的内存中的实体。4、某些特殊类或对象在成员方面侧重不同。5、静态成员和实例成员。一、类是对现实世界事物进行抽象所得到的结果(建模)

2025-03-26 11:48:29 190

原创 c#的.Net Framework 的console 项目找不到System.Window.Forms 引用

首先确保是建立的.Net Framework 的console 项目,然后天健reference 应用找不到System.Windows.Forms 引用。在第一个PropertyGroup下添加。然后在第一个ItemGroup 下添加。打开对应的csproj 文件。

2025-03-26 08:40:25 300

原创 c# 学习(003初识类和名称空间)

1.没有源代码的类库的引用 黑盒引用。2.有源代码的类库的引用 白盒引用。改代码要找到root cause!2、UML(通用建模语言)类图。2、MSDN文档与搜索引擎结合。练习创建类库项目进行项目引用。练习阅读编译期报错并排除错误。1、仔细阅读编译器的错误。

2025-03-25 20:11:46 86

原创 c# 学习(002初识各类程序)

ConsoleWPFwcfcloudwf。

2025-03-25 19:13:19 104

原创 c#学习记录(请忽略)

多练多练,实践很重要,在反复中积累

2025-03-25 16:01:39 103

原创 信号的响应过程

信号处理过程涉及用户态和内核态之间的切换,以及信号掩码(mask)和挂起信号集(pending)的变化。

2025-03-25 09:49:57 115

原创 令牌桶的实现 使用sigaction 屏蔽非内核发出的信号

【代码】令牌桶的实现 使用sigaction 屏蔽非内核发出的信号。

2025-03-25 09:37:13 173

原创 使用单一计时器,构造一组函数,实现任意数量的计时器

【代码】使用单一计时器,构造一组函数,实现任意数量的计时器。

2025-03-25 09:30:50 159

原创 信号相关的程序

2、打印一行* 等待信号,信号来了才开始打印,然后重复。1、不断打印*换行之后响应信号,然后循环。

2025-03-24 21:39:11 120

原创 守护进程Linux

【代码】守护进程Linux。

2025-03-24 21:36:19 108

原创 setitimer 使用遇到的问题

/ 相当于什么都没做,只有it_value 有值时才会设置定时器。//定时器的间隔时间。当定时器到期时,它会自动重置为这个间隔时间。如果这个值为0,定时器只会触发一次。// 设置初始的超时值, 如果为0 则不会设置超时,也不会有超时。

2025-03-24 16:43:20 190

原创 写程序遇到的问题(一)

如果不添加#include<string.h> 虽然编译通过但是会在 if( tok[0] == '\0') 提示段错误。

2025-03-24 16:34:22 152

原创 令牌桶的实现

【代码】令牌桶的实现。

2025-03-23 22:33:00 186

原创 makefile 提示seperator

需要再~/.vimrc 中添加 set noexpandtab。noexpandtab 意思是禁止将tab键识别为多个空格。

2025-03-23 20:57:10 99

原创 信号的漏桶实现

学习apue使用信号实现cat 命令,第一个是固定时间打印固定数据,第二个是累积token 打印

2025-03-23 19:00:20 186

原创 APUE 获取系统的最大的目录长度

【代码】APUE 获取系统的最大的目录长度。

2025-02-20 09:53:48 91

原创 ubuntu安装最新版本的 Git(通过 PPA)

Ubuntu 官方仓库中的 Git 版本可能不是最新的,如果你需要安装 Git 的最新版本,可以使用 Git 的官方 PPA。

2025-02-16 21:53:16 127

原创 新建github操作

1.在github.com的主页根据提示新建一个depository。2.配置用户名和邮箱3.生成ssh秘钥找到public key 对应的文件路径复制显示的内容4.将复制好的秘钥复制到github上找到github上的setting 点击然后找到ssh key 字样 添加秘钥5克隆仓库中的代码 选择ssh 链接git clone ssh链接。

2025-02-15 17:37:01 670

原创 qt的QMainWindow保存窗口和恢复窗口状态

保存窗口状态QByteArrayQSettings恢复窗口状态需要传入QByteArray,它会自动恢复所有停靠窗口和工具栏的状态。

2025-02-13 20:15:08 447

原创 qt的QSizePolicy的使用

在 Qt 中,控制。如果想要,可以通过和设置。基本用法假设我们有一个QWidget或者QLabel需要在或里调整大小:这样label,并且允许它占据多余的空间。伸缩因子示例假设在一个里,有两个QLabel和label2在中会根据分配额外空间。label1占1份,label2占2份,因此label2会比label1。

2025-02-13 19:25:22 379

原创 Qt 的QImage 像素操作

(如遍历整个图片),推荐使用 constBits(),避免了函数调用开销。

2025-02-13 16:34:20 397

原创 qt 控件的焦点事件

在 Qt 中,设置焦点策略是通过QWidget的方法来实现的。焦点策略控制了一个控件何时和如何获取焦点。Qt 提供了几种常见的焦点策略,以帮助管理控件的焦点行为。

2025-02-12 10:00:00 309

原创 linux 下的termios读写

目录下的串口设备文件,列出所有可能的串口设备。下面是一个简单的示例,展示如何自动列出系统中所有的串口设备。

2025-02-12 09:57:55 187

原创 Qt中的事件

实现 DraggablePushButton.cpp。DraggablePushButton.h 头文件。写一个 可以拖动的按钮。

2025-02-12 08:07:18 220

原创 qt 事件的传递顺序

通过,你可以拦截和修改事件的传递行为。这在需要对多个控件共享事件处理逻辑时非常有用,例如:拦截鼠标事件、键盘事件等。事件过滤器返回true表示事件已被处理,不再传递给目标控件,返回false则继续传递事件。

2025-02-11 22:26:23 1139

原创 Modbus TCP协议

是一种通信协议,最早由。

2025-02-11 15:55:29 901

原创 qt串口通信

以下是一个基本的串口通信示例,演示如何在 Qt 中打开串口、发送数据、接收数据以及关闭串口。在使用 Qt 创建串口通信程序时,请确保在项目的。

2025-02-11 15:53:34 203

原创 第五章 Linux网络编程基础API

sockfd 参数由socket系统调用返回一个socket,serv_addr 参数是服务器监听的socket地址,addrlen参数指定sockaddr 的长度。bind 将my_addr所指的socket 地址分配给未命名的sockfd文件描述符,addrlen参数指出该sockaddr的长度。printf("网络字节序的地址值:0x%x\n", addr.s_addr);// 转换成功,addr.s_addr 存放的是网络字节序的地址。

2025-02-04 16:02:56 345

原创 哈夫曼树

哈夫曼树(Huffman Tree)是一种最优的二叉树,常用于数据压缩,如在 Huffman 编码中使用。它是根据字符出现的频率来构造的,频率越高的字符越靠近树的根,频率低的字符则在较深的节点上。其核心思想是通过构建一颗最小堆(或者优先队列)来逐步合并最小的两个节点,直到所有节点都合并成一颗哈夫曼树。

2025-02-02 17:09:16 282

原创 c++ tuple学习记录(二)

在c++中,std::tuple是一个模板类,位于<tuple>头文件中,用于存储多个不同类型的值。与std::pair类似,但支持存储多个元素,并且每个元素可以是不同的类型。以下是std::tuple的主要用法。

2025-01-18 13:09:27 335

原创 c++ blockqueue 记录

【代码】c++blockqueue记录。

2025-01-17 17:43:25 82

原创 编程错误记录(一)

提示此处不需要#C++标识符__VA_ARGS__只能出现在可变参数宏中的替换列表中。

2025-01-17 13:19:06 188

原创 c++ chrono 操作 以及c语言的时间操作

时间点的默认单位取决于其时钟类型如(std::chrono::system_clock或std::chrono::high_resolution_clock).可以通过std::chrono::duration_cast将时间点转化为特定的时间单位。std::chrono::time_point是c++11引入的一个模板类,用于表示特定的时间点。它通常和std::chrono::duration结合使用,支持加减操作和时间点比较操作。time_point支持比较操作符<,<=,>,>=,==,!

2025-01-16 21:32:58 273

原创 Qt学习1

QUuid是 Qt 库中的一个类,用于生成、表示和操作(通用唯一标识符,Universally Unique Identifier)。UUID 是一种广泛使用的标识符,通常用来唯一地标识对象、记录、会话、文件、实体等。QUuid类提供了一个简单的接口,用于创建、解析和操作 UUID。UUID 在很多应用场景中都有广泛使用,比如在数据库中作为主键、在分布式系统中唯一标识设备和实体、在文件系统中生成唯一文件名等等。

2025-01-02 17:46:05 407

原创 汇编基础DOSBox的使用

g 数字 执行到代码段的指定位置 如果数字为空则执行到程序末尾直至结束。-e 立即数/寄存器:偏移值 修改从给定地址内存中的字节值。c: // 进入有debug.exe 的文件夹。-u显示代码段的汇编指令 从cs:IP处显示。首先mount c d:/masm回车。-a 向代码段写入汇编代码。-rax修改ax中的值。DOSBox 的使用。-r 显示寄存器的值。

2024-12-30 15:51:43 375

原创 shell 编程(五)

df 命令时unix 和类unix系统中用于显示文件系统磁盘空间使用情况的命令,df 是disk free的缩写,它可以显示磁盘上每个挂载点的使用情况,包括总容量,已用空间,可用空间以及挂载点信息。

2024-12-25 21:10:41 880

空空如也

空空如也

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

TA关注的人

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