自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 问答 (7)
  • 收藏
  • 关注

原创 CMake+MinGW+vcpkg项目引入三方库的两种方式(手动路径,vcpkg)

就能一站解决,十分便利,vcpkg的构建系统包含CMake,自己在用vcpkg搭建项目的时候遇到了些问题,一时搜索无法解决,最后回去补了些CMake的基础,再回来用vcpkg,才终于走顺,这里把实验的过程特此记录。接到个新项目,用到很多三方库,从对接的同事那了解到vcpkg这个工具,周末试用了下,确实很方便,以前需要自己动手的源码下载,编译和打包安装,如今一个。, 告诉CMake,根据MinGW的生成方式,下载vcpkg.json依赖库的x64-mingw-dynamic版本,以Debug的构建类型调用。

2024-09-09 22:12:15 597

原创 Cairo库移植到安卓记录

接Android Studio引入ndk编译的so库的故事,这个东西搞了两周以后,由于自己不熟悉Java和安卓开发,踩了不少坑,其中一周时间都是花在怎么用Android Studio上的。。。AS下的新版本Koala,结果网上资料全是旧版本,很多设置完全不同,遇了问题经常不知所措,后面不得已,换成了老一点的2021 dolphin版本,也学会了看安卓官网资料,逐渐才稳定下来。

2024-08-06 22:47:32 757

原创 Python脚本批量将md文件转化成pdf

这个脚本我刚开始尝试下Windows的环境下使用,但不知道是Powershell解析问题还是什么,搞了半天latex出现各种莫名奇妙的错误,查网几个小时下来找不到解决方法,最后只得放弃。过了几个月,又想起这事,这次不走windows了,改到了wsl上,一些问题查网加上通义AI,总算走通了,做个记录,有windows路线打通了的朋友,告诉我一声。自己学编程时做了很多笔记,如今累积起来已经有几十个了,有很多图片链,怕哪天图床垮了图片就找不到了,于是就想把当时的 md 文件都转成 pdf。

2024-07-28 20:54:49 461

原创 小练习:def文件的使用

程序员的自我修养》

2024-07-28 19:33:56 387

原创 JNI在命令行的使用

开发环境为windows下wsl ubuntu22.04, java版本(原本打算用powershell纯windows环境弄,但不知道为什么。

2024-07-22 14:28:45 622

原创 Android Studio引入ndk编译的so库, 通过jni给Java程序使用

工作要求将一个C++老项目的函数用ndk打包成库给安卓同事的java程序调用。自己之前从来没接触过安卓开发,问了老板为什么不让安卓开发来干,老板说安卓开发不懂c++,公司就我一个是懂c++的。。。项目开发年限超过十年,只在32位系统编译过,一些32位可以通过的代码到了64位就不行了,很多的库多少有些兼容问题项目开发环境全程断网,给开发带来诸多不便NDK:Native Development Kit,是 Android 的一个工具开发包。

2024-07-17 12:01:47 1319

原创 awtk踩坑记录三:移植awtk-mvvm到Awtk Designer项目

使其awtk和awtk-mvvm指向上个步骤下载的路径,这样做的目的是使得designer编译调用正确的awtk路径,我的路径是转到。删掉, src下其他所有文件删除对navigator.h头文件引用, 因为mvvm库里也有和窗口导航有关的重名API, 容易引发冲突。跳转到view_models文件夹执行gen脚本, 生成。从github下载并编译awtk, awtk-mmvm。修改application.c,加入。修改src, 将common下的。, 以及idl.json.

2024-06-20 15:48:56 405

原创 用esp prog烧录ESP32-C3板踩坑

附ESP32C3的GPIO一览:按照发现仍旧无法烧录,设备管理器一看没有相关的jtag unit驱动,只好尝试改用esp prog。

2024-06-01 16:04:13 1179

原创 awtk踩坑记录二:移植jerryscript到awtk design项目

用awtk-designer新建项目,awtk和awtk-mmvm路径改为上一步github下载到的目录路径(如designer改不了,可在project.json上修改)工作要求,想尝试看看在awtk-designer设计界面的同时能不能用javascript开发逻辑层,以此和前端技术联动,本文是一种项目建构的思路。从awtk-jerryscript复制3rd/jerryscript,src改名为jerryscript_src到designer项目上。

2024-05-29 21:29:08 584

原创 awtk踩坑记录一:awtk-web build.py编译过程笔记

测试方法:vscode下用python插件F5 debug, debug方式选择command line arguments。

2024-05-29 18:35:36 638

原创 关于在Ubuntu上配置mysql踩的一些坑

最近准备换工作了,回顾了下学校时期做的那个webserver,又在linux下mysql踩了一些坑,特此记录下来如果出现404错误,但是检查source.list又没有问题,那可能你的镜像源很久没更新了,记得。

2024-04-05 20:49:50 518

原创 FreeRTOS-07任务切换 对vPortSVCHandler和xPortPendSVHandler的理解

其实看懂代码之后就知道上下文切换的实质是将哪个任务栈的数据加载入cpu寄存器中,新任务加载时,旧任务的数据将由cpu寄存器通过汇编代码加载回其任务栈,然后屏蔽中断,调用切换函数修改当前指向的TCB,再恢复中断,通过新任务的TCB将新任务的任务栈数据加载入cpu, 自此切换完成。

2023-12-19 21:19:41 1891

原创 过来人大学四年的教训小结

如果能去的学校都差不多,那么重要的就是你想干什么和你想去哪里了,优先选择离家乡近的学校,因为放假回乡十分省钱(个人反例,福建的选了西安的学校,结果放假坐飞机回去就特别花钱,一次900-1000,退票又麻烦)高考完三个月,如果做什么规划都迷茫,建议先把驾照考了,这个时候考时间最充足。对于对所处专业乃至社会常识一无所知的新人来说,大学四年是最好不过的试错环境,心态一定要放开,尽量尝试新的事物(考驾照,报社团,学证书等等),你在大学积累的这些阅历都会在后面的工作中给你重大的帮助!即将走入社会,尽快把学生思

2023-10-28 13:14:22 459 2

原创 用bash脚本实现openocd一次性烧录

有的时候eide扩展烧录莫名奇妙就会失灵,弹出"upload busy"的错误,网上也查不到是怎么回事,只好手动打指令,奈何openocd烧录指令又太过麻烦,于是多方查找整了个适合自己的脚本供自己实验,这里把脚本分享出来,方便自己在公司的时候就能在网上找到,也方便各位开发,有更好的方案欢迎提出哈。IDE:vscode+eide扩展。开发板:stm32f103c8t6。可根据自身实际情况做更改。烧录器:stlinkv2。

2023-10-03 20:18:01 702

原创 C语言实现贷款计算器

一个心血来潮的研究,避免以后买房被坑。捣鼓了半天才发现原来支付宝的那个利率是年利率不是月利率,坑了我半天。。。

2023-08-19 18:14:53 1493 3

原创 实现vscode上用gdb调试stm32

这周负责编写设备的某个模块,其中遇到了一些变量地址不正确的错误,按理这种底层变量错误用gdb一类的调试器就能很快查到,可是初入嵌入式一行,此C语言非彼C语言,对于gdb怎么对接到项目上根本一无所知,问了下周边同事,发现他们居然都是直接打串口日志来调试的,那岂不是每次遇到问题都得在代码上留一堆丑陋的printf?

2023-08-06 17:32:36 2491 4

原创 STM32 江协教程 EXTI外部中断(对射式红外传感器计次、旋转编码器计次)笔记补充 旋转编码器判断方向的两种实现方法记录

spm=1001.2014.3001.5502后的一点小补充。方法一,一方下降沿同时查看另一方电平,以A为例,A下降时若B为高电平则为正向,A下降时若B为低电平则为反向,这种判断方法有个问题另一方电平会有一定持续时间延迟,导致用很小的力扭旋钮也会触发中断,导致没有转到位就出现数字变化的情况,不推荐。方法二,官方方法,通过A,B电平变化的滞后性来判断,如果A下降之后B也下降就是正向,而B下降后A再下降就是反向,由于A,B变化都是即时性的,就很好的解决了上面方法一的问题。

2023-07-20 23:38:27 591 2

原创 图灵完备游戏:信号计数 解法记录

可以看看,不管是情形1还是情形2,由于输入2-4的输入情况都在两个亮及以上,全加器1的c端输出一定为1,由于全加器1的c端输出是半加器2的b端输入,因此可转化为半加器2的s端输出一定为1,而这个输出正好和数位2引脚绑定。**计数4的情况:**全加器1s端和c端都输出1,由于全加器1的s端输出是半加器1b端的输入,于是半加器1s端输出0,c端输出1, 半加器1c端输出和全加器1c端输出分别成为半加器2a端和b端的输入,于是半加器2 s端输出0, c端输出1,正好对应计数4的情况,和引脚为4的终点绑定。

2023-05-27 13:05:39 2058 1

原创 谈FANUC KAREL与C的几点区别

3.socket编程,karel是跟发那科机器人对接的,要注意的一点是机器人用的是server port,跟C的socket描述符差别还是挺大的,监听,读写对端都是用的这个port,还要开个file变量去OPEN才能发数据,而C accept得到client的fd后直接就能对client fd读写了,多客户端情况下对应到C服务端就是有多个client fd整数,karel的情况,我目前还没遇到多个客户端连接机器人的情况,但是示教器上S3-S8 5个port是空闲的,这种工业的情况应该连接管理会很简单。

2023-05-07 20:14:03 722

原创 20230420-上海广策信息技术笔试记录

思路:AC,其实就是自己实现一个快速排序,分别把数字字符串和字母字符串遍历提取出来,然后再遍历主串,数字串和字母串设两个指针在开头,主串遍历到字母则字母串指针值拷进去,然后前进一位;想法:两步,一.实现大数乘法,二.通过阶乘乘法求出阶乘结果字符串,然后遍历统计字符串末尾0的个数。特定一个字符串s,该字符串仅由字母与数字组成,即a-z,A-Z,0-9组成,脑筋急转弯,半天想不出来,其实当时也想到位运算的。LC的简单题,不知道为什么一直有3道用例错,枯了。序,并且不改变之前字母和数字所在的位置,即字母之。

2023-04-20 19:19:14 509

原创 浅谈Python装饰者模式与其他静态语言(C++,Java)装饰者的区别

2023-03-07 21:51:37 240

原创 WebServer重写(一):日志库双缓冲和阻塞队列压测对比

2023-01-31 20:56:00 1057 4

原创 对于Muduo主从Reactor模式的理解

2023-01-03 09:40:12 523

原创 C++ Primer 13.5练习:实现StrVec和String

A

2022-12-22 20:46:52 413

原创 实验模拟TCP连接的各种异常情况(三次握手丢包,两端异常)

2022-12-05 21:45:40 2363

原创 Effective STL 学习笔记

2022-12-03 20:10:16 392

原创 WebServer异步日志模块,Log类构析导致线程死锁解决分析

1

2022-09-30 20:32:10 320

原创 javascript随机生成邮箱,手机号,姓名,日期,密码供数据库使用

2022-09-22 21:59:34 3201

原创 20220911- LC第310场周赛

x

2022-09-11 13:32:41 774

原创 如何在vscode中使用gdb命令行与打印指针数组

.

2022-09-10 16:14:19 2335

原创 C++11 auto, decltype类型推断分析

2022-08-05 11:18:29 328

原创 2022-7-17 FTP客户端项目实现 - 总结

通过该项目对于Linux的文件和网络相关API更为熟悉,了解了网络协议的基本实现方式,同时加深了对TCP传输特点和网络传输原理的理解。

2022-07-17 23:29:46 888

原创 linux- 云服务器重装系统后如何恢复远程连接

.

2022-06-11 08:36:59 487

原创 信号量实现哲学家问题(C)

.

2022-06-06 22:22:33 281

原创 生产者消费者问题条件变量和信号量各自实现(C++)

.

2022-06-06 22:18:07 194

原创 弄懂数字签名,公钥私钥,数字证书的一些问题

对称加密和非对称加密各自如何应用?非对称加密的缺点是比较慢,因此常用的通信方式就是对称加密,对称加密的公钥为了确保机密,通常由私钥方使用非对称加密的方式传输给通信各方,以后的通信就都是基于这个公钥的对称加密。那非对称加密的公钥是怎么来的?发起通信的一方(通常是CA)自己生成一个公钥,将带有公钥的数字证书(无法被冒充或篡改)一起发给通信各方。我怎么就能确定非对称加密传输过来的公钥就是通信方的?有人冒充怎么办?所以就需要第三方权威机构的介入,通过颁发数字证书为公钥的可信度背书,我向服务器发送请求,服务

2022-05-27 00:03:49 860

原创 操作系统整理-进程调度算法

先来先服务调度算法(First Come First Severed, FCFS)如其名所说,先来的进程先被执行。会出现短作业需等待先来的长作业造成等待时间过长的问题。最短作业优先 (Shortest Job First, SJF)亦如其名,调度程序优先选择运行时间最短的进程来运行,会造成短作业“饿死”长作业的问题。高响应比优先算法(Highest Response Ratio Next, HRRN)兼顾了长作业和短作业的算法,调度程序选择响应比最高的进程来运行,响应比公式一般是(等待..

2022-05-27 00:00:49 196 1

原创 操作系统整理-僵尸进程

僵尸进程什么是僵尸进程?Liunx系统中,子进程先于父进程结束后不会消失,而是会在进程表内留下返回信息等待父进程回收,从子进程结束返回到被父进程回收的这段时间它们成为僵尸进程。设计僵尸进程的目的是什么?​ 子进程返回结束以后其占用资源需要被回收,内核会将这些子进程转为僵尸进程来释放它们所占有的大部分资源,这些僵尸进程唯一保留的是内核进程表的一条记录,包括子进程ID,终止状态,资源使用数据等信息。子进程转为僵尸进程便于其父进程调用wait()来“认领”这些“僵尸”并做进一步处理。【疑问:为什么不是内

2022-05-26 23:57:14 801

原创 十大排序算法C++实现及分析一览

📈十大排序算法C++实现及分析一览十大排序算法复杂度一览排序算法平均时间复杂度最好情况最坏情况空间复杂度排序方式稳定性冒泡排序O(n2)O(n^2)O(n2)O(n)O(n)O(n)O(n2)O(n^2)O(n2)O(1)O(1)O(1)In-place稳定选择排序O(n2)O(n^2)O(n2)O(n2)O(n^2)O(n2)O(n2)O(n^2)O(n2)O(1)O(1)O(1)In-place不稳定插入排序O(n2)O(n^2)O

2022-05-01 19:40:37 162

原创 C语言补漏:字符串指针与字符数组传参

字符串指针与字符数组传参深信服的笔试上被吊打,其中对一道用指针做形参的题目印象十分深刻,借此恶补了一晚上指针,今天总结,以作警示。​ 试想有如下情形,将一个字符串指针做形参赋值函数修改其字符串,函数结束后字符串被改变了吗?#include<stdio.h>void testPstr(char *ppstr){ ppstr = "hasten"; printf("%s\n",ppstr);}int main(){ char *pstr = "test";

2022-04-17 20:38:57 5668

空空如也

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

TA关注的人

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