- 博客(25)
- 问答 (4)
- 收藏
- 关注
原创 使用cJson进行解析和生成json字符串
如果需要交叉编译得到指定编译工具链生成的库,需要在CMakeLists.txt中指定使用的编译工具,增加例如下面的语句。JSON中的对象是一组键值对的集合(类似结构体),每个键值对都用逗号分隔,值书写在。JSON中的数组是一组有序的值的集合,每个值都用逗号分隔,简单的如。目录下生成动态库文件,如果还想生成静态库文件,请将上面第3行改为。这种情况下的,需要把库文件放到程序能访问到的路径,并在程序中加载。,复杂的比如每个元素又是一个json对象。的值可以存放在下面的json中。解析数组,简单的比如解析。
2024-12-07 14:44:17
1199
原创 ./a.out: error while loading shared libraries: libcjson.so.1: cannot open shared object file
error while loading shared librariescjson
2024-12-05 20:31:59
263
原创 VS CODE无法识别-D定义的宏
今天在看代码的时候,查找某个函数的引用,发现只有定义和声明2个地方,但我100%确定它是被用到的,果然,使用全局搜索能找到第3个地方。但是,实际上这个SUPPORT_PREVIEW是被定义了的,只不过不是在cpp文件里,而是在makefile文件里通过-D选项定义的。1、VS CODE下 ctrl + p ,在 弹出的输入框内输入 >C/C++,选择C/C++编辑配置(JSON)可以看到,引用没有找到是因为VS CODE觉得SUPPORT_PREVIEW是未被定义的,所以这处引用是无效的。
2024-06-04 17:04:57
804
原创 VS CODE 部分枚举没有颜色
从上面的图片可以看到,ACT_IDC_PWDVAL和HWND的颜色是正常的,但WPARAM和UI_COLOR_BLACK没有颜色。上述两种情况,就算你再cpp文件头写了正确的include,也还是会出现这样的问题,不知道算不算VS CODE的BUG。之前一直用source insght,最近想试下VS CODE,遇到了很多奇怪的问题。②UI_COLOR_BLACK没有颜色是因为包含它的头文件是ui.h,但工程中有两个ui.h。以上是一些经验分享,如果有更好的解决版本麻烦告知一下,感激不尽。
2024-05-07 10:39:59
518
原创 AF_UNIX 本地通信编程示例
linux本地进程间通讯,大概有如下几种方式,本地域套接字是其中的一种。基于socket的框架上发展出一种IPC机制,就是UNIX Domain Socket。只是将应用层数据从一个进程拷贝到另一个进程。这是因为,IPC机制本质上是可靠的通讯,而是为不可靠的通讯设计的。UNIX Domain Socket也提供面向流和面向数据包两种API接口,类似于TCP和UDP,但是面向消息的UNIX Domain Socket也是可靠的,消息既不会丢失也不会顺序错乱。
2023-09-19 10:19:01
302
原创 VS CODE使用git管理代码
本来是一直使用source insight看代码的,后来接触了VS CODE,被它丰富的插件和更顺眼的配色吸引,但是VS CODE缺少很多source insight上的功能(应该只是我不知道怎么配置)。比如source insight上可以一眼看出当前文件哪些部分是修改了的,哪些是修改了还没保存的。绿色的表示修改了并且已经保存了的,黄色的表示修改了但还没有保存的,其他的表示未做修改的部分。
2023-09-12 16:07:09
284
原创 将本地项目上传到GitHub
本地项目1. 在本地项目的文件夹下打开git Bash, 输入git init 使用git管理起来。git init2. 输入 git add . 和 git commin -m "你的提交注释",将项目文件上传到git 仓库。git add .git status git commit -m "你的提交说明"注意:① git无法提交空文件夹,如果需要提交,需要在空文件夹中touch一个 .gitkeep后再git add大坑:git无法添加一个空的文件夹② 提.
2021-12-31 16:21:53
522
转载 查看当前编译器支持的C/C++标准
gcc -E -dM - </dev/null | grep "STDC_VERSION"或者printf("%ld\n",__STDC_VERSION__);printf("%ld\n",__cplusplus);对应关系如下如果没查到,则默认是c89的标准;如果是#define __STDC_VERSION__ 199901L,则默认支持的是c99标准;如果是#define __STDC_VERSION__ 201112L,则默认支持的c11标准;C ++ 98:_
2021-12-23 14:18:23
3104
转载 gcc -D选项
D选项 D选项是用来在使用gcc/g++编译的时候定义宏的。gcc -DDEBUG -D 后面直接跟宏命,相当于定义这个宏,默认这个宏的内容是1gcc -DNAME=Peter -D 后面跟 key=value 表示定义key这个宏,它的内容是value常用场景-DDEBUG 定义DEBUG宏,可能文件中有DEBUG宏部分的相关信息,用个DDEBUG来选择开启或关闭DEBUG-Dprivate=public -Dprotected=public 通常用于测试环境,把private 与 pro
2021-03-26 11:17:15
630
原创 source insight 4.0无法修改字体的解决方法
option选项下面① DocumentsOptions-->ScreenFonts用于控制所有字体的大小和字体② StyleProperties-->可以针对不同部分(比如Comment,Declaration...)进行字体的属性设置本人修改DocumentsOptions-->ScreenFonts的字体类型后,只有outline和文件列表区域的字体发生了变化,代码区还是原来的字体使用第二种方法,修改Mono Font View的字体后代码区的字体终...
2021-03-15 17:12:27
987
原创 I2C简介
I2C总线是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线(SDA,SCL)即可在连接于总线上的器件之间传送信息。
2021-02-21 15:21:39
761
原创 C++读书笔记
名称空间:可能一个程序使用的两个组件,都含有名为wanda()的函数,此时需要用名称空间指出使用的是哪个版本的wanda()例如有A和B两个组件都含有wanda()函数using namespace A; wanda(); == A::wanda()函数:函数原型为什么需要原型?1.告诉编译器调用这个函数需要什么参数,没提供的话就报错2.函数返回值会被放在指定的位置(CPU寄存器或者内存中),需要告诉编译器检索多少字节以及如何解释他们编译器为什么不直接去找函数实现要这些信息..
2021-01-28 19:32:45
325
原创 source insight配置
背景色Options -> preferences -> colors & fonts -> windows Background用4个空格替换tabOptions -> File type options -> tab width填4 ->勾选Expand tabs to spaces显示空格,tab,行号Options -> File type options -> show line numbers ...
2021-01-25 14:53:01
340
原创 Git学习笔记
安装 Git地址 ->https://git-scm.com/download/win 一路next安装初次使用配置 Git需要配置下使用者的名称和邮箱,后续的提交都会以此区分提交者身份git config --global user.name "名称"git config --global user.email "邮箱"使用git config --list 命令确认结果三棵树你的本地仓库有 Git 维护的三棵“树”组成,这是 Git 的核心框架。工作...
2021-01-05 16:39:32
286
原创 交叉编译生成gdb可执行文件(将gdb文件导入设备调试)
环境介绍:程序运行环境 : 海思hi3559A芯片的设备程序编译环境: 编译服务器, 使用aarch64-himix100-linux-编译工具链应用场景:当设备运行产生coredump文件时,需要进行gdb解析,此时需要使用aarch64-himix100-linux-编译工具链交叉编译生成一个对应的gdb可执行文件.编译步骤:http://ftp.gnu.org/gnu/gdb/ 从此处下载gdb源码当前最新的gdb版本是9.2,但是gdb-9.2版本引入了C++...
2020-12-01 14:52:04
92
原创 交叉编译生成gdb可执行文件(将core文件导出后进行调试)
环境介绍:程序运行环境 : 海思hi3559A芯片的设备程序编译环境: 编译服务器, 使用aarch64-himix100-linux-编译工具链应用场景:当设备运行产生coredump文件时,需要进行gdb解析,且只能将core文件从设备导出在自己的环境下进行解析.编译步骤:大概的编译步骤和可能遇到的问题请参见我的另一篇文章:交叉编译生成gdb可执行文件(将gdb文件导入设备调试)本文和上面链接的差异在于:①上文的gdb运行在设备中,也就是将gdb导入到设备后调试.
2020-11-17 13:45:34
53
原创 多目录工程的makefile书写示例
关于程序的编译和链接——————————在此,我想多说关于程序编译的一些规范和方法,一般来说,无论是C、C++、还是pas,首先要把源文件编译成中间代码文件,在Windows下也就是 .obj 文件,UNIX下是 .o 文件,即 Object File,这个动作叫做编译(compile)。然后再把大量的Object File合成运行文件,这个动作叫作链接(link)。编译时,编译器须要的是语法的正确,函数与变量的声明的正确。对于后者,通常是你须要告诉编译器头文件的所在位置(头文件里应该仅仅是声明,
2020-07-27 14:33:38
666
转载 获取Linux内核源码的方法
我只是网址的搬运工,因为喜欢将相关的东西尽量放在同一个地方。http://www.cnblogs.com/JiYF/p/6139038.html点击打开链接友情提示:下载速度很慢,急性子慎入,还有,找到更好的资源记得留言告诉我,谢谢!
2017-08-05 23:34:18
286
转载 USB参考资料
附上网上找的usb资料链接,讲的很全面也和通俗易懂!墙裂推荐!https://www.crifan.com/files/doc/docbook/usb_basic/release/html/usb_basic.html点击打开链接
2017-07-10 14:11:56
288
转载 python生成二维码
以下转载自:点击打开链接#二维码的中间添加一个logo图片qr = qrcode.QRCode( version = 1, #二维码大小(最小是1,是个21X21的矩阵,version+1,矩阵边长+4) error_correction = qrcode.constants.ERROR_CORRECT_H, #纠错等级_L(<=7%),_M(<=15%,默认),_Q(<=25%)
2017-03-08 20:19:09
530
转载 【python图像】给你的头像+1
原文:http://www.cnblogs.com/SeekHit/p/6101867.html早些年,微信朋友圈有段时间非常流行这个头像+1的套路,简直逼死强迫症。将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果。 类似于图中效果 涉及知识:Python Imaging Library (PIL)图像库,Image, Imag
2017-03-07 19:18:24
907
空空如也
什么样的段错误会导致一个线程的所有局部变量地址都超大
2017-08-24
#if 有未定义的变量也能编译通过!?
2017-04-20
c语言的局部变量地址是连续的吗?
2017-04-10
临界区等待的线程是排队的吗
2017-02-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人