- 博客(45)
- 资源 (4)
- 收藏
- 关注
原创 从gcc9.4升级到gcc13.2后,使用c++20编译生成可执行文件运行时报错
libstdc++库版本太低,需要升级。一般前面升级gcc时已经安装了最新的libstdc++,只是没有配置系统环境变量,导致程序运行时找到的是旧的库。
2024-05-20 20:15:13
441
原创 安装win10系统后,笔记本使用电池供电屏幕黑屏
我的笔记本是华硕笔记本,最近安装了win10系统。使用外接电源后,屏幕能正常显示。一旦拔掉电源,使用笔记本电池供电,屏幕就黑屏。很明显电脑屏幕没有问题,应该是系统设置问题。
2024-05-04 21:58:16
700
原创 工业互联网常用开源库
libopen62541 opc-ua开源库libmodbus modbus开源库libsocketcan can 开源库canutils:ubuntu 中socket can 与can通道绑定命令ifconfig -a 查看当前can设备名如can0ip link set down can0ip link set can0 type can bitrate 5000ip link set up can0cansend can0 123#deafbeafcandump can0lib
2024-05-01 06:18:46
140
原创 类继承时,由于未注意基类和派生类的构造函数调用顺序导致的异常
构造派生类时,先构造基类。上面代码中,将派生类的成员变量传递给基类,此时,派生类还没有构造,因此传递的东西是未知的。
2024-04-09 19:59:22
180
原创 隐形类型转换,生成临时变量导致的bug
这时,由于GUEST是char*类型,而func2参数类型为std::string,因此func2在调用时触发隐式类型转换,生成一个临时的std::string变量。上面代码func3的参数是lambda函数,func3对这个lambda函数并不会立即调用,而是等到func1返回后一段时间后才调用,即异步调用lambda函数。上面代码中func3是异步调用,其中的lambda函数会在异步调用成功时被调用。因此当func1函数运行结束并返回时,func3中的lambda函数并没有执行。
2024-03-23 11:25:16
336
原创 在vscode中使用Markdown写文档,uml画图或者graphviz画图,实现markdown预览
推荐使用本地jar包的方式。这种方式会出现卡顿的情况。比较复杂,会出现配置不成功。
2024-02-02 19:58:11
863
原创 使用sshpass实现非交互式远程执行任务
sshpass 可以让你使用非交互式方式进行ssh操作,即可以在命令行中提供密码,适合用于shell脚本的编写。
2023-12-27 22:02:10
616
原创 1-2走台阶问题
1-2走台阶问题是典型的动态规划问题,解决问题的关键就是找到递推公式,即将问题的求值过程分解成数个更小问题的求值,最后将这些小问题的求值结果合并得到最终问题的求值结果;而这些小问题的求值又可以进一步分解,只到分解成简单的终点值(如果1级、2级台阶,我们看到能直接说出答案)。得到递推公式以及终点值(结束条件),那么我们直接写递归函数就可以求得结果。然而由于递归函数不注意剪枝,中间有大量的重复计算,因此可以采用空间换时间的方式进行优化,将中间计算结果保存起来,后面通过查表直接得到结果而不用重复计算。
2023-08-27 07:58:13
504
1
原创 OPC UA学习指南
自20世纪90年代初以来,工业自动化领域内,基于PC和软件的自动化系统,特别是基于Windows PC上的可视化和控制应用迅速增长。在过去几年里,标准化的自动化软件开发的一个主要努力方向就是,通过大量不同总线系统、协议、接口访问自动化设备上的数据。
2023-08-09 18:36:48
772
2
原创 数据类型不一致时,a=b=c表达式引起的bug
从网上找的wu_manber算法源代码,运行的时候发现,一旦我要匹配的模式多的时候,就coredump了,core提示"unable to handle kernel paging request at 0xxxxxx",栈指针指向wmprepHashedPatternGroups函数。开始以为问题出在这个函数中的kmalloc调用上,因为前面已经kmalloc了大量内存,很可能在这里需要分配
2016-01-13 16:25:26
569
转载 inet_ntoa连续调用两次产生的返回值相同的原因
inet_ntoa() 返回一个字符指针,它指向一个定义在函数inet_ntoa() 中的static 类型字符串。所以每次你调用inet_ntoa(),都会改变最后一次调用inet_ntoa() 函数时得到的结果。比如:char *a1, a2;a1 = inet_ntoa(ina1.sin_addr); /* this is 166.111.69.52 */a2 = ine
2014-06-27 09:53:47
949
转载 MySQL删除表中重复数据及主键重新排列
MySQL删除表中重复数据及主键重新排列一、删除表中重复数据删除前:1234567891011mysql> select * from duplicate;+----+-------+| id | name |+----+-------+| 1 | wang || 3 |
2014-06-24 11:58:37
924
CAN总线培训资料,CAN总线通信技术
2023-04-13
基于stm32的can双节点通信说明
2023-04-13
边缘计算网关二次开发指南 (Hi-Grid-T2系列).chm
2023-04-13
linux源码编程代码风格推荐,帮忙自己养成记好的编码风格
2023-04-13
使用at8xc51snd1 单片机制作MP3,源代码加原理图
2011-07-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人