自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++ 函数调用时的参数传递方法

C++程序中函数调用时的参数传递方法与C语言函数的不同点是,除了参数之外,对象指针也会被传递。

2024-10-30 10:49:53 506

原创 i386下 C C++ 函数调用时的参数传递方法

基本上,i386将所有参数保存到栈上。但是,可以通过GCC的扩展功能__attribute__((regparm())),也可以实现部分参数的寄存器传递。

2024-10-18 16:56:46 980

原创 x86_64下 C C++ 函数调用时的参数传递方法

在x86_64上,整型和指针类型的参数会从左至右依次保存到rdi、rsi、rdx、rcx、r8、r9这6个寄存器,浮点参数会保存到xmm0、xmm1.....等寄存器中。当参数个数超过了这些寄存器的限制,多余的参数就会保存到栈上。

2024-10-15 11:56:24 547

原创 QT读取ini文件的一个坑

后缀名为.ini的文件是一种常用的配置文件格式,用于存储和读取应用程序的配置信息。Qt提供了方便的API来读写.ini文件,使得配置信息的管理变得简单快捷。Qt中读写.ini文件主要是使用 QSettins 类。

2024-09-27 17:08:50 348

原创 与GDB调试有关的栈知识

系统中,除了进程的栈大小有限制,实际上每个线程的栈大小也有限制。多线程编程时,各个线程使用的栈的总和不能超过进程许可的栈大小,所以,要注意各个线程的栈大小限制,设计应用程序时一定要注意栈的使用量。

2024-09-24 17:15:58 601

原创 Intel架构的基本知识

32位模式下最多能指定16383个段,各段的最大大小为2^32字节。64位模式下采用了平坦模型,因此可以使用64位线性地址。不能使用分段式内存模型。

2024-09-20 18:45:44 1112

原创 GDB的基本使用方法(之三)

我们可以将多条GDB命令写入一个文件,然后使用GDB的source命令加载文件,自动执行文件中的多条GDB命令。

2024-09-19 15:47:46 903

原创 GDB的基本使用方法(之二)

要调试守护进程(daemon process)等已经启动的进程,或是调试陷入死循环而无法返回控制台的进程时,可以使用attach命令,形式是:(gdb) attach PIDattach之后就能使用普通的gdb命令,因此可以通过print显示变量,也可以设置断点。此外,回复程序运行一般可以使用continue命令。确认了行为之后,需要在gdb和进程分离时使用detach命令:(gdb) detach

2024-09-14 17:25:17 991

原创 GDB的基本使用方法(之一)

既然有这些副作用,那为什么还要加上-O2的优化选项呢?因为如果不加上优化选项,那就必须管理有优化和无优化的两种可执行文件,因为有时候一个bug可能在未优化版本中存在,但是在优化版本中不存在,这样,管理成本会上升。所以,编译程序时还是加上优化选项。

2024-09-12 11:33:41 829

原创 加锁造成的线程优先级反转

优先级反转(Priority Inversion),也称优先级翻转,一般是在优先级不同的多线程环境中发生。在桌面操作系统中,线程的优先级不是太重要,因此较少见优先级反转的现象。但是,优先级反转是实时操作系统(RTOS)中一个常见的问题,特别是在采用优先级调度算法的系统中。这个问题通常发生在多个线程共享一个资源(如一个互斥锁或信号量)时,低优先级的任务意外地阻塞了高优先级的任务。

2024-09-05 11:20:24 1310

原创 C++ 的死锁问题的发生和避免

C/C++程序中产生死锁的原因很多,本文大致归纳了下面几类,分别做分析。

2024-09-04 11:59:58 913

原创 C++ MQTT客户端库libmosquitto的使用

安装好MQTT服务器Mosquitto之后,就可以使用Mosquitto提供的客户端库开发MQTT客户端软件了。本文以Ubuntu上使用Mosquitto的客户端库为例子。

2024-09-03 20:05:58 1180

原创 Ubuntu固定USB串口名(包括1拖N的USB串口)

有时候,我们通过 输入dmesg | grep ttyUSB*命令,查看传感器所接上的USB串口的KERNELS,会发现,1拖N的USB串口,只有一个ID,一个ID就无法区分多个USB串口了。这个时候,可以使用

2024-09-02 17:12:08 1569

原创 Ubuntu下安装和配置MQTT服务器Mosquitto

要在Ubuntu上安装和配置Mosquitto服务器的步骤如下

2024-08-30 16:00:50 903

原创 QT中HTTP请求的同步和异步接口

有了异步接口和同步接口,应用HTTP请求就会很方便了。但是,异步接口编程的代码看起来还是有些凌乱。另外,实际编程任务重,有些HTTP请求并不需要立即获取结果,只需要在某个时候查询即可。所以,可以考虑将异步接口封装成异步任务

2024-08-29 16:14:11 1562

原创 C++日志模板库SPDLog的使用

​只需要将从https://github.com/gabime/spdlog 下载的SPDLog整个代码文件夹添加到项目,然后将以上的Log.h和Log.cpp添加到项目,就可以在代码中使用该类的对象输出日志了

2024-08-28 16:31:11 463

原创 C C++ Winows网络编程头文件冲突

(1)Windows.h和winsock2.h的冲突:(2)mswsock.h和winsock2.h的冲突

2024-08-12 09:13:08 642

原创 Linux下用gdb找到cpu占用率最高的线程

一般情况下,程序执行时,cpu占用率比较高的话,就会影响其它程序的执行,所以就需要对程序进行优化,查找程序运行时,程序中cpu占用率最高的线程,并优化之。

2024-08-10 19:19:33 790

原创 SQLite批量INSERT

在SQLite数据库中进行大批量记录INSERT,有三种方法,三种方法的效率由高低,本文举例说明。

2024-08-08 14:31:18 1349

原创 Qt创建Json对象时浮点数的精度控制

不管是出现以上三种中哪一种错误,都会导致精度控制失效。

2024-08-07 20:22:00 831

原创 C C++ 中自定义可变参数函数调用其它可变参数函数

C++11 开始,引入了可变参数模版,就让在自定义可变参数函数中,调用其它可变参数函数变https://img-blog.csdnimg.cn/img_convert/52357f4fa522497e902fdb606b4e5790.png得很简单了

2024-08-07 11:19:08 460

原创 Qt进程之间互斥

我们开发软件的时候,有时候需要多个进程访问同一个资源,这个时候需要进程之间实现函数互斥,实现对同一资源的序列化访问。

2024-08-06 15:50:18 315

原创 Ubuntu和Windows的看门狗软件开发

开门狗软件的开发方法

2024-08-02 22:36:09 764

原创 STM32和emWin必须知道的那些事

本文介绍了STemWin移植到STM32F10xx开发板上的步骤。

2023-03-07 16:29:39 6125 3

原创 STM32 复用JLink下载线输出调试信息

使用SWD口对MCU进行数据的监控

2023-02-09 11:52:09 1026

原创 STM32那些事

STM32那些事

2023-01-12 21:51:18 1344

原创 PCL 的点云滤波

PCL中的几种常见的点云滤波函数及其应用。

2022-10-18 18:02:28 3556

原创 PCL中的八叉树

PCL中八叉树的体素构造方式和基于八叉树的邻域搜索和空间变化检测等应用。

2022-09-29 09:45:50 2318

原创 PCL1.12.1 with QT6.3.2 编译部署

本文详细记录了编译 PCL1.12.1 with QT6.3.2 的步骤。

2022-09-14 14:40:01 1364

原创 PCL中 的 kd-tree

kd-tree 可以实现有效的《范围搜索》和《最近邻搜索》。《最近邻搜索》是处理点云数据的核心操作,可用于查找点组或特征描述符之间的对应关系,或者,定义一个或多个点周围的局部邻域。

2022-09-09 10:21:28 1436

原创 PCL点云库 点云拼接

PCL 点云

2022-09-05 17:08:09 3584

原创 *.pcd文件格式

点云库PCL的数据文件*.pcd文件格式。

2022-09-05 09:31:49 357

原创 Bootstrap3学习笔记 Bootstrap3文档和栅格系统

Bootstrap3文档和栅格系统

2014-12-22 18:08:11 1134

原创 ZendFramework2学习笔记 验证码

ZF2提供了图片验证码Zend\Captcha\Image和符号字符验证码Zend\Captcha\Figlet,图片验证码是网站应用中见得比较多的一种验证码,本文以图片验证码为例。

2014-12-12 15:22:54 1644

原创 Linux下C/C++代码调用PHP代码

Linux下C/C++代码可以通过popen系统函数调用PHP代码并通过fgets函数获取PHP代码echo输出的字符串。

2014-12-05 11:19:20 2475

原创 ZendFramework2学习笔记 发送email

ZF2中发送email有2种方式,一是通过系统的邮件程序发送email,二是通过smtp协议使用远程的smtp服务器发送email。

2014-12-02 16:27:18 2419

原创 ZendFramework2学习笔记 文件上传、文件上传进度

关于文件上传进度的获取方式,zf2提供了三个类:Zend\Progressbar\Upload\ApcProgressZend\ProgressBar\Upload\SessionProgressZend\Progressbar\Upload\UploadProgress 其中SessionProcess要求php5.4以上,本文以SessionProcess为例,其他2个使用方法一样。

2014-11-26 17:38:55 2028

原创 ZendFramework2学习笔记 国际化、多语言

为zf2项目配置指定国家的语言。

2014-11-24 13:32:48 1915

原创 ZendFramework2学习笔记 表单过滤、表单验证

ZF2有很多内建的Filter和Validator组件,可以方便地对表单数据进行处理。

2014-11-20 20:44:15 3054

原创 ZendFramework2学习笔记 json和ajax

ZendFramework2项目中的json和ajax

2014-11-17 15:56:39 1969

空空如也

空空如也

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

TA关注的人

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