自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++的拓扑排序实现

/0:白色节点(未发现),1:灰色节点(发现),2:黑色节点(完毕)return false;< 如果遇到了灰色节点,则表示发现了环。//标记为灰色节点(未发现)return false;< 后继节点包含环,返回false。//标记为黑色节点(已完成)class TopologicalSort//!//遇到环,则返回false。// 将所有节点的颜色标记为白色(未发现)// 拓扑排列(完成时间晚的放到前面)// 对每个白色节点进行深搜。

2024-04-19 08:06:25 210

原创 网络流的C++代码实现与过程讲解

网络流算法是通过将图中的边看作流量通道,将图的点看作流量的起点或终点,来求解图中的最大或最小流量的问题。它是一种非常重要的最优化算法,广泛应用于图论、运筹学、计算机网络等领域。网络流算法有很多种,其中最著名的是Ford-Fulkerson算法和Edmonds-Karp算法。这两种算法都使用了增广路径来寻找最大流量。本文将介绍Ford-Fulkerson算法的实现。

2024-04-19 08:03:53 253

原创 OpenFoam——案例之圆柱绕流【算例】

目前通过在 3 维中定义网格来处理 2 维几何,其中前平面和后平面定义为空边界块类型。读取二维 Fluent 网格时,转换器会自动在第三方向拉伸网格并添加空面片,将其命名为 frontAndBackPlanes。zeroGradient只表示在边界上梯度不变,并不是不随时间变化。uniform (0 0 0)更强硬一些,就是为某个值。:读取fluent.msh网格文件。本案例使用ICEM划分网格,并导入openfoam中。system/blockMeshDict文件可以删除。这是转换网格后自动生成的。

2024-04-17 08:24:44 450

原创 C++的左值与右值

对于左值的转发,首先通过获取类型type,定义args为左值引用的左值变量,然后通过static_cast进行强制转换,这里T&&会发生引用折叠,当T被推导为左值引用时,则为T&& &,折叠为T&,当推导为右值引用时,则本身为T&&,forward返回值与static_cast都为T&&。通过源码可以看到,std::move接受一个通用引用的参数,函数返回一个&&表明std::move函数返回的是一个右值引用,这里remove_reference表示移除类型T的引用部分,具体的实现可以参考。

2024-04-17 07:37:04 801

原创 openmp中的任务(task)

Single选中的那个线程会在for循环中不停地创建任务,每一次循环就创建一个任务,这个任务被放入线程池(注意!这个任务不是被single的这个线程执行,而是先被放入任务池)。在不附加何限制的情况下, 这些任务将放入到任务池中, 由空闲的线程取出执行, 如上图所示。换言之, 任务的默认执行顺序是未指定的、随机的。一般而言, 通常使用指令single 利用一个线程创建任务(single 子句保证只有一个线程进行创建任务)。这些任务在创建后, 将被放入到任务池, 供线程组中空闲的线程获取和执行。

2024-04-12 10:43:15 906 1

原创 驱动开发:探索DRIVER_OBJECT驱动对象

入口处都会存在这样一个驱动对象,该对象内所包含的就是当前所加载驱动自身的一些详细参数,例如驱动大小,驱动标志,驱动名,驱动节等等,每一个驱动程序都会存在这样的一个结构。这一系列则是微软的调用号,不同的RIP代表着不同的涵义,但一般驱动也就会用到如下这几种调用号。编译这段程序,签名并运行,我们即可看到如下输出信息,此时当前自身驱动的详细参数都可以被输出;编译这段程序,签名并运行,我们即可看到如下输出信息,此时当前自身驱动的详细参数都可以被输出;即可得到全部的数据,这段代码可以写成如下样子,其中的。

2024-04-12 10:39:47 394

原创 如何学习嵌入式Linux驱动?很多粉丝让我推荐学习驱动方面的书。

这本书不需要购买开发板,照样可以学习Linux驱动知识!

2024-01-31 17:12:25 148

原创 https://github.com/ 打不开咋办?

把这一段:#github添加到末尾。

2024-01-29 15:32:51 141

原创 USB麦克风和圆孔麦克风哪个好?

但如果没有搭配独立声卡使用,电脑显卡产生频率辐射,耦合进音频电路里,容易产生滋滋啦啦电流声和杂音。USB麦克风的优势在于内置声卡功能,声音数字信号即时转化,人声效果清晰,没有电流声和杂音干扰,而且免驱动即插即用,用起来也很方便。3.5mm接口麦克风传输声音模拟信号,需要电脑声卡把声音模拟信号转化为数字信号再进行处理。USB麦克风和圆孔麦克风哪个更好,先要弄清楚两者的差别。二合一,它通过内部数模转换电路,实现声音由模拟信号转化为。所以,题主在问题里提到孔插噪音很大,有。差的原因,也有圆孔麦克风配置问题。

2024-01-14 12:43:05 592

原创 word2003图片不显示

第三种不显示的原因就好办了,如果你word里面的图片是从网站页面直接复制到word中的,那么你的word里面的图片就可以不显示了。二是那个网站上的这张图片被设置保护了,在你的word中显示的就可能是说明图片版权的文字了。这个的原因就是你插入图片到段落文字中,这段段落文字的格式间距行距固定值造成的,同时出入的图片是嵌入型的。二是设置图片环绕型,鼠标左键选择图片,然后在显示的图片工具或者左下角的绘图工具中将图片环绕型设置为其它形式,不要嵌入型就是了,这样就可以显示图片了。

2024-01-13 08:58:16 569

原创 如何解决安装Windows11时出现“这台电脑无法运行Windows11”

Windows11于2021年发布,但很高的安装门槛让很多的电脑无法安装Windows11(例如TPM2.0、UEFI和安全启动)。在下面新建三个DWORD(32位)值分别命名为“BypassTPMCheck”,“BypassRAMCheck”,“BypassSecureBootCheck”。会出现注册表编辑器,如下图。按下图中红色箭头所指的按键,重新选择安装的版本,再按下“下一页”。等待屏幕显示如下图界面后,系统会进入OOBE,以完成对电脑的设置。就会出现下图界面,接受许可条款,再按下“下一页”。

2024-01-12 13:01:21 454

原创 C++指针详解

指针是一个整数,一种存储内存地址的数字内存就像一条线性的线,在这条街上的每一个房子都有一个号码和地址类似比喻成电脑,这条街上每一个房子的地址是一个字节我们需要能够准确找到这些地址的方法,用来读写操作因此,指针就是这些地址。不要考虑类型,无论是什么类型的指针,都是用来保存地址的整数。

2024-01-08 10:35:25 776

原创 C++ TinyWebserver 部署到Linux下,并运行(使用的是Vmware的虚拟机运行Ubuntu20.04)

2. 首先进行mysql5.7的安装: 参考教程 : Ubuntu20.04安装MySQL5.7-实测3种方法(保姆级教程):https://blog.csdn.net/liuhuango123/article/details/128264867,3. 装好mysql后项目开始,按照TinyWebserver 中 readme中介绍,一步一步来,(也参考这个教程:https://blog.csdn.net/weixin_43330388/article/details/106222189)

2024-01-08 10:25:18 568

原创 在c++17下,程序的输出是什么?(有可能编译出错,有可能输出未知,有可能是未定义行为)

【代码】在c++17下,程序的输出是什么?(有可能编译出错,有可能输出未知,有可能是未定义行为)

2023-12-28 08:28:37 525

原创 就说说当年拒掉我的那些公司

本人做程序员的工作也有不少年头了,当年在资历和技能不足的时候,也经常遇到面试失败,当时我被这些公司拒掉的时候,当时心里还有些失落,但是随着本人技能和资历的提升,说句矫情的话,再让我进这些公司,本人反而还要挑挑拣拣。

2023-12-28 08:22:33 899

原创 C++ Qt开发:QItemDelegate自定义代理组件

代理类的作用是用来实现组件重写的,例如TableView中默认是可编辑的,之所以可编辑是因为Qt默认为我们重写了QLineEdit编辑框实现的,也可理解为将组件嵌入到了表格中,实现了对表格的编辑功能。在自定义代理中是所有代理类的抽象基类,它用于创建自定义的项委托。提供了一个基本的框架,使得可以定制如何在视图中绘制和编辑数据项。是的基类,而则是的基类。这个继承体系提供了不同层次的定制能力。CreateEditor() 用于创建编辑模型数据的组件,例如(QSpinBox组件)

2023-12-26 08:33:35 1251

原创 C++移动构造与std::move()

程序定义了一个MyString类,其中构造函数和拷贝构造函数需要对传进来的字符串开辟空间并复制内容,另外一个Entity类含有一个MyString成员,并在初始化时复制传入的MyString对象。此为移动构造,接受的是一个右值,构造是直接复制原MyString的size与data,不重新开辟空间做深拷贝。用此引出移动构造和std::move()1. Entity右值构造时也可不使用std::move,直接将参数强转为右值类型也可以,std::move相当于通知构造函数以移动构造的方式进行。

2023-12-26 08:16:24 503

原创 rust中的超时处理

测试中发现用rtu的方式下,如果slave没有发回数据,程序将陷入无限等待中。也没找到如何设置这个超时。自从 tokio 1.0发布以来,rust的异步开发总算大势已定。尽管没达到标准库的速度,依然挡不住大家的热情。背景:之前用go开发一个边缘网关的小东东,业余时间做了一大半。后来学了rust,打算练手,用rust重新写。在tokio-modbus的github上,找到有人提到这个问题。自己动手, 用golang和tokio中都有的 select 很好的解决问题。既生瑜何生亮,感觉go就是小号的rust。

2023-12-26 07:26:58 1225

原创 Qt现在几乎已经取代MFC了,是时候学习Qt6了。Qt6可以作为学习界面编程的入门技术。

本书以Qt 6.2版本为开发平台,循序渐进地介绍Qt开发应用程序的常用技术,包括在Windows和Linux下的Qt开发环境的搭建、单步调试功能的使用、应用程序的基本架构、信号与槽工作机制、Qt绘图、对话框编程、常用界面组件编程、文件读写、Windows和Linux下的库的创建和使用、绘图、数据库、多线程、网络和多媒体等模块的使用。Qt作为一个跨平台的开源C++应用程序开发框架,在国内外的各种行业中有非常广泛的应用,尤其是面向军工、嵌入式、自主可控的信息安全行业,Qt是个必不可少的编程工具。

2023-12-21 08:23:10 1176

原创 rust 项目的文件结构

cargo new [project_name ] --[bin/lib] 命令可以在项目名称后指定一个参数,来告诉cargo我们创建的是什么类型的项目,bin 代表二进制项目,也就是我们常说的可执行文件。我们自定义模块的 默认导出,任何一个自定义mod 文件夹都应该包含一个 mod.rs文件。cargo new [project-name] --lib 创建的默认结构。由 cargo 维护的项目相关依赖的具体信息,不需要我们手动编辑。这样是不合理的,并不符合我们 cargo 的开发规范。

2023-12-21 08:09:48 999

原创 文盘Rust -- 本地库引发的依赖冲突

仔细看了一下两个库的源码,引用 clickhouse-rs-cityhash-sys 库的方式是不一样的。翻翻 clickhouse-rs/clickhouse-rs-cityhash-sys/Cargo.toml,里面的一个配置很可疑。links 指定了本地包被链接的名字,在这里引起了冲突,改掉本地包中的名字自然解决了冲突,在依赖图中保证唯一性很重要。clickhouse-rs-cityhash-sys 的源码直接放在 clickhouse-rs 工程目录下面。本文涉及代码github。

2023-12-21 08:04:08 1093

原创 rsut基础:模块的使用一、mod 关键字、mod.rs 文件的含义等

我们都知道通过 cargo 创建出的工程中就是程序的入口,但是还有更多的使用方式。rustc 命令 : rust编译器,就算没有cargo也可以生成程序,但是比较麻烦,这些都让cargo来处理就好cargo 命令 : 项目管理工具下面就是一些问题了什么是 create?rustc 的编译入口文件,这个文件就被当做 crate 文件。crate 类型: 有多种,最常见的是bin和lib,其他类型参见rust参考手册-链接cargo 怎么定义工程项目中哪些是需要编译的 crate 的?

2023-12-20 11:16:13 979

原创 内存安全探秘:变量的所有权、引用与借用

Rust 语言由 Mozilla 开发,最早发布于 2014 年 9 月,是一种高效、可靠的通用高级语言。其高效不仅限于开发效率,它的执行效率也是令人称赞的,是一种少有的兼顾开发效率和执行效率的语言。Rust语言具备如下特性:•高性能 - Rust 速度惊人且内存利用率极高。由于没有运行时和垃圾回收,它能够胜任对性能要求特别高的服务,可以在嵌入式设备上运行,还能轻松和其他语言集成。•可靠性 - Rust 丰富的类型系统和所有权模型保证了内存安全和线程安全,让您在编译期就能够消除各种各样的错误。

2023-12-20 11:03:16 1200

原创 word2003无文本格式粘贴

3、关闭保存,返回Word窗口,依次点击“工具/自定义/键盘”按钮,在“类别”栏选中“宏”,在右侧“宏”里选中“无格式粘贴”选项,将光标定位到“请按新快捷键”输入框,此时按下键盘组合键即可为“无格式粘贴”指定快捷键,比如同时按下“Ctrl+Shift+V”键,再点击“指定”按钮,“Ctrl+Shift+V”就成为“无格式粘贴”的快捷键了。2、打开“Microsoft visual Basic”窗口,在左侧“工程”栏选中“Normal”选项,点击“插入/模块”选项打开一个模块窗口,Sub 无格式粘贴()

2023-09-04 22:02:31 152

原创 关于《ASP.NET MVC企业级实战》

前言部分,出版的时候漏了部分内容,我这里将其贴出来。注意:由于百度云的封杀,书上的源码下载地址已失效,共享的源码经常10s内就失效,如果发现资源无法下载,建议入QQ群,群文件当中有源码。github源码:第1章源码:https://github.com/zouyujie/NewGrammar第12章源码:https://github.com/zouyujie/RolePermissionSln。

2023-08-30 13:48:26 79

原创 word2003,取消表格首字母自动大写

表格---表格自动套用格式:

2023-06-03 10:39:22 125

原创 Win10系统怎么设置黑暗模式

最近偶尔很多朋友反映,晚上用电脑的时候屏幕太亮,对眼睛造成了很多刺激和不适。别担心,win10系统有自己的黑暗模式,只有切换到黑暗模式才能解决这个问题。好了,以上是关于如何解决的Win10系统设置为黑暗模式的具体操作方法是否非常简单,需要按照上述方法进行。点击左侧新界面中的选择默认应用模式;3、点击个性化选择界面中的颜色;6、打开管理器,界面变成黑暗模式。1、右击开始按钮,点击设置;时间:2022-09-27。2、点击弹出界面的个性化;

2023-05-16 08:45:52 365

原创 Word 2003 该工程中的宏被禁止,请查阅联机文档解决的解决办法

步骤一:依次打开:工具--选项--安全性--宏安全性,设置成“低”或“中”,点击“确定”步骤三:再打开WORD程序,打开相应的文件,用你的宏就Ok了。注意:需要重新打开这个word文件才会生效。步骤二:现在去关闭WORD程序。

2023-03-14 10:32:36 711

原创 stm32社区网址

stm32社区

2023-02-14 15:48:06 153

原创 office2003下载地址

office2003下载地址

2023-02-06 11:24:23 288

原创 使用Eclipse IDE for GNU ARM搭建STM32的开发环境

可以看出,开启并行编译后速度飞快。

2023-02-02 09:55:31 1193

原创 从站代码迁移,基于stm32f103与LAN9252

最近刚刚完成了从站代码的迁移,新的控制芯片使用了stm32f103,通信芯片使用了LAN9252,过程当中碰到了很多问题,当然在知乎寻求帮助得到了回应,所以来做个总结吧。

2023-01-31 11:53:28 781

原创 Qt6 正式发布了,这将是一个里程碑式新版本,它的使命是使 Qt 成为未来的开发平台。

是一款专业的编程语言开发软件。Qt6官方版现在依赖于 C++17 兼容的编译器,这有助于清理和改进代码库,并为用户提供更现代的 API。Qt6最新版在处理大型数据集和性能方面改进了低级容器类,持续更新 QML 语言,使其更安全、更易于使用,除了极少数例外,支持的所有模块。在之前的 Qt 版本中,官方提供了离线和在线两种安装方式。但从 Qt5.15 开始,官网上已经看不到离线安装包了。本书的学习曲线非常平缓,详细介绍了Qt6d的环境搭建和开发实战!2020/12/08 日,Qt6 正式发布了,

2022-10-18 10:13:16 1073

原创 刚出校门不久的青年程序员,在工作观上,容易陷入两个误区

不拼的人去哪里都死路一条,最后躲在家里,或啃老,或啃小,或啃配偶,家人无法抛弃你,只能施舍你,但怎么可能尊重你?这要求当我们是雇员时,得站在雇主的角度思考问题,这样就不会陷入“不拼”的误区,把自己的工作做好,雇主活得下去,雇员也才有活路。当我们当雇主时,得站在雇员的角度思考问题,这样就不会让人陷入“太拼”的误区,雇员活不好,毁了他一生,这样挣的钱越多,社会效益越差,罪孽越重。很快,身体垮掉,也没有业余时间学习、恋爱、成家,十来年后,被榨干吃尽,一脚踢开,就面临无工作、无婚姻、无积蓄、无未来与无健康的窘境。

2022-10-12 14:36:31 77

转载 Linux ifcfg-eth 网络接口配置参数详解

Linux ifcfg-eth 网络接口配置参数详解Linux 网络接口配置文件 [ /etc/sysconfig/network-scripts/ifcfg-eth0 ] 这里的“0”是一个唯一号对应于一个指定的接口。 代码如下复制代码TYPE=Ethernet    #网卡协议类型DEVICE=eth0    #设定物理设备别名(除了动态

2016-11-18 14:04:04 3439 1

转载 linux上网络配置不生效的怪异现象处理

1、在Linux上,在ifcfg-eth0上设置IP地址等信息详细配置信息如下已[root@rac01 Desktop]#more/etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0BOOTPROTO=noneNM_CONTROLLED=yesONBOOT=noTYPE=EthernetUUID=3

2016-11-18 14:03:12 3368

转载 Tilera 64核处理器快速上手

Tilera 64核处理器快速上手标签: TileraLinux2013-05-25 09:40 2393人阅读 评论(0)收藏举报分类: Embedded(3) 版权声明:本文为博主原创文章,未经博主允许不得转载。前段时间用了下tilera的64核处理器,发现网上的资料比较少,刚开始上手的时候比较麻烦,于

2016-11-18 10:35:45 571

转载 理清Processor, Processor Sockets, Processor Cores, Logical Processors, Hyperthreading这些概念吧

理清Processor, Processor Sockets, Processor Cores, Logical Processors, Hyperthreading这些概念吧如果你只知道CPU这么一个概念,那么是无法理解CPU的拓扑的。事实上,在NUMA架构下,CPU的概念从大到小依次是:Node、Socket、Core、Logical Processor。随着多核技术的发展,我们将

2016-11-17 14:22:58 2083

转载 VPP/Build, install, and test images

VPP/Build, install, and test imagesLast updated 3 months agoVPPThis page explains how to build, install, and smoke-test a VPP package. These procedures assume that you have a working d

2016-11-17 13:28:13 2070

转载 __FILE__,__LINE__,FUNCTION__实现代码跟踪调试(linux下c语言编程 )

__FILE__,__LINE__,FUNCTION__实现代码跟踪调试(linux下c语言编程 )先看下简单的初始代码:注意其编译运行后的结果。root@xuanfei-desktop:~/cpropram/2# cat global.h //头文件#ifndef CLOBAL_H        #define GLOBAL_H        #include

2016-11-15 14:43:20 451

空空如也

空空如也

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

TA关注的人

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