自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (1)
  • 收藏
  • 关注

原创 STM32变量的存储和堆栈

变量 如上图,这是在KEIL下生成的map文件的最后几行。来理解一下这几个含义,RO:只读,RW:读写,ROM:这个不用解释,固件存储。那么接下的就更好理解了:Code:编译代码段大小;RO Data:编译后只读数据大小;RW Data:编译后读写数据大小。那么,ZI Data怎么理解呢? 大家都知道,一段代码除了代码段(主要指函数或者语法语句),还有变...

2019-10-29 16:07:17 2990

原创 tx2 can通信之epoll接收

上一篇《NVIDIA TX2 CAN端口的使用(一)》介绍了如何在TX2平台上添加CAN相关的模块,本篇将介绍如何进行CAN编码。在linux驱动中,can是以网口的形式进行处理,因此完全可以使用linux下的五种编程模型。以socket为例,常用的IO模型是select、poll、epoll,因本人最近刚学习完epoll(epoll是真心强大,并且好用),所以就直接用了epoll来实现...

2019-06-06 18:20:57 1148 4

原创 线性链表常用接口的实现

线性链表是数据结构中最常见,最常用的结构之一,其动态添加与删除优越性能在很多OS的任务调度中经常被使用到。通过最近的学习与归纳,有不小收获,整理一些常用的接口与实现如下:1.link_list* create_list(void) 创建链表,并包头结点,头结点内容为链表长度(或节点数)2. STATUS head_insert( link_list* list,int index,i...

2019-06-06 17:32:51 760

原创 tx2 can通信之开机自动加载can模块

最近有个新项目使用了TX2及开发板,因地盘通信采用CAN总线,初步查了手册,TX2自身就带了两路CAN外设,于是就放弃了之前USB2CAN的方案,直接使用TX2的CANBUS;特将操作步骤记录在此。 1.查询系统是否挂载了CAN外设 使用 lsmod 指令,该指令主要是用来查询内核当前正常挂载了哪些模块。通过man命令查询lsmod的用法;当前主...

2019-05-08 09:39:07 4054 7

原创 动态工厂模式的实现

常用项目中,工厂模式通常会采用swith的方式进行创建,随着类型的不断增加,就会疯狂增加switch的case项,为了解决这个问题,采用动态注册的方式实现工厂实例的创建。实现思路上,通过提前注册key和构造器,然后在需要创建的地方通过key来找到构造器从何构造出目标对象。

2024-04-11 14:03:09 230

原创 ubuntu下Terminator比较喜欢的配色

修改文件:~/.config/terminator/config。

2023-08-15 18:00:09 565

原创 基于mosquito封装的mqtt客户端

mosquito 是一个成熟的mqtt库,包含broker和对应客户端.使用时调用接口比较多,class mosqpp_EXPORT mosquittopp { private: struct mosquitto *m_mosq; public: mosquittopp(const char *id=NULL, bool clean_session=true); virtual ~mosquittopp(); int reinitialise(const char *id, bo

2021-08-20 17:13:39 1255 2

转载 Linux共享库、静态库、动态库详解

1. 介绍        使用GNU的工具我们如何在Linux下创建自己的程序函数库?一个“程序函数库”简单的说就是一个文件包含了一些编译好的代码和数据,这些编译好的代码和数据可以在事后供其他的程序使用。程序函数库可以使整个程序更加模块化,更容易重新编译,而且更方便升级。  程序函数库可分为3种类型:静态...

2020-01-17 14:20:57 463

原创 Json数据日志打印小技巧

通常涉及到网络通信一般都比免不了涉及到json字符串.最近在使用jsoncpp库做开发时,在日志打印这块儿有些头疼,json字符串本身自带格式,即使序列化之后也会出现很多的"\t""\n"等转意字符.如图:为了一屏多显示内容,我们需要去掉json的数据格式,可又不能影响其数据内容.因此需要对json数据做一些处理. 代码部分如下:/*--------------------...

2020-01-13 16:27:46 2125 1

原创 剑指offer--- 重建二叉树

题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。使用语言:C++(clang++3.9)时间限制:< 1s空间限制:< 32M解题思路:题目考查重点应该是二叉树的遍历和特性....

2020-01-03 11:35:23 208 1

原创 剑指offer---反转链表

题目描述输入一个链表,反转链表后,输出新链表的表头。使用语言:C++(clang++3.9)时间限制:< 1s空间限制:< 32M解题思路:一.采用迭代的方法.二.采用递归的方法.迭代实现:/*struct ListNode { int val; struct ListNode *next; ListNode(int x) : ...

2019-12-31 09:13:24 91 1

原创 剑指offer---用两个栈实现队列

题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。使用语言:C++(clang++3.9)时间限制:< 1s空间限制:< 32M解题思路:题目考查重点应该是栈和队列的属性.栈:先进后出;队列:先进先出.依照这个属性,入列就先入一个特定的栈,出列的时候,将入列栈的数据出栈再压入第二个栈,就将原来栈低的数据转换到了栈顶,依次顺序出...

2019-12-30 10:41:28 76

原创 剑指offer--- 空格替换

题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。使用语言:C++(clang++3.9)时间限制:< 1s空间限制:< 32M解题思路:题目考查重点应该是字符串的存储和指针,用面向对象来实现确实没什么意思,直接将str转成string对象处理起来相当简...

2019-12-27 16:36:32 95

原创 剑指offer---二维数组中的查找

题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。使用语言:C++(clang++3.9)时间限制:< 2s空间限制:< 32M解题思路:思路一:暴力查询,逐行逐列查询,时间复杂度O(MxN);思路二:二分法,或者十...

2019-12-08 21:08:49 83

原创 剑指offer---从尾到头打印链表

题目描述输入一个链表,按链表从尾到头的顺序返回一个ArrayList。使用语言:C++(clang++3.9)时间限制:< 1s空间限制:< 32M解题思路:典型的逆序问题:思路一:可用栈(可以用栈意味着递归也是可以的)思路二:因也用的是C++, 可直接使用数组的转置;思路三:使用容器vector 的头插,不推荐,vector头插效率太低;实现(思路二...

2019-12-05 17:09:11 96

原创 JsonFat--Json 格式化小工具

无意中翻到了年前自己做一个Json格式化工具,拓展功能解析Base64加密的Json数据。不废话,直接看效果:初始界面Json数据格式化对Base64加密的Json字符串进行解密并格式化输出 本想把Json进行Base64加密,无奈源码找不到了,等后面有时间在改吧。需要的同学可扫码关注我的公众<一篇技术贴>,回复:JsonFat获取。...

2019-11-01 14:36:20 637

原创 Linux 系统命令及其使用详解(大全)

  名称:cat  使用权限:所有使用者  使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName  说明:把档案串连接后传到基本输出(萤幕或加 > fileName 到另一个档案)  参数:  -n 或 --number 由 1 开始对所有输出的行数编号  -b 或 --number-nonblank 和 -n 相似,只不过对...

2019-10-29 17:07:29 262

转载 值得学习的C语言开源项目

值得学习的C语言开源项目  - 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。下载链接:http://ho...

2019-06-13 13:55:25 225

转载 数据结构与算法学习(转)

基本算法贪心算法:贪心算法 作者:独酌逸醉贪心算法:贪心算法...

2019-05-21 15:25:11 174

mqc_vincent.tar.xz

基于mosquito封装的mqtt客户端

2021-08-20

空空如也

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

TA关注的人

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