- 博客(23)
- 收藏
- 关注
原创 【C/C++】从源码到执行:程序运行的完整生命周期解析
从代码到运行,计算机通过分层处理将人类可读的指令转化为物理硬件能执行的电平信号。理解这一过程有助于调试程序(如链接错误、符号未定义)和优化性能(如减少编译依赖、选择JIT策略)。C/C++静态库和动态库(共享库)
2025-04-25 17:07:34
1181
原创 TensorFlow
张量是多维数组的泛化。在数学中,张量可以看作是向量和矩阵的高维推广。在机器学习和深度学习中,张量是用于表示数据和模型参数的基本数据结构。标量(0维张量):一个单独的数值,例如 5。向量(1维张量):一维数组,例如 [1,2,3]。矩阵(2维张量):二维数组,例如12341&2\\3&41324高维张量:超过二维的数组,例如一个三维张量可以表示为123456781&2\\3&45&6\\7&813245768。
2025-04-09 08:45:11
1083
原创 RAM和ROM的区别
内存影响的是设备同时运行多个应用程序的能力,而存储则决定了你可以安装多少应用程序以及保存多少个人文件。所以,当手机重启后,手机重启前运行的程序(例如微信聊天界面)会被清除。而图片、聊天记录之类的数据还在。“内存”和“存储”是计算设备中的两个不同概念,它们各自有着不同的功能和用途。
2025-02-14 17:12:15
895
原创 使用kendryte官方的C SDK 和toolchain 对k210进行开发
那么现在就得到三个文件:kendryte-toolchain、kendryte-standalone-sdk、kendryte-standalone-demo。清空当前build、将demo文件里面的face_detect复制到sdk的src文件夹中、编译face_detect。2、硬件环境:Sipped 的 Maix Ⅰ系列开发板 Maix bit(k210)1、获取的工具链放在/opt 路径下(也可以是其它路径,看自己的习惯)三、获取C Demo (自己根据 c sdk写一个demo也行)
2025-01-03 14:44:44
598
1
原创 MaixBit k210学习记录
唯一需要注意的一点是,如果你使用的是Maix bit开发板(Maix-I K210)的话,最新版本的MaixPy v4 是不支持的,所以克隆仓库的时候不要克隆。想要快速上手还是推荐使用Window+MaixPy IDE或者Linux + MaixPy IDE进行开发,后续再使用c。目标实现:在虚拟机(Ubuntu)中,实现对Maix bit(k210)开发板的开发。以上是关于使用MaixPy IDE对开发板进行开发的方法,使用。
2024-12-28 15:09:08
457
1
原创 NFS和Samba环境搭建及交叉编译指南
Ubuntu 同时作为 Samba 和 NFS 服务器,Windows 作为 Samba 客户端,而嵌入式设备作为 NFS 客户端。这将允许 Windows 用户通过 Samba 访问 Ubuntu 上的数据,同时让嵌入式设备通过 NFS 进行高效的数据交换。
2024-12-27 11:03:21
889
原创 VirtualBox下ubuntu23.04使用主机串口以及使用 minicom 进行串口调试
VirtualBox下ubuntu23.04使用主机串口以及使用 minicom 进行串口调试
2024-12-26 16:20:41
896
原创 【Linux】使用GTest和CuTest编写测试用例,使用GCOV和LCOV测试代码覆盖率
编译器编译源代码时,将额外的代码注入到目标代码中,这些代码将用于记录每个源代码行被执行的次数。然后,通过运行gcov命令来解析这个文件,并将其与源代码相匹配,生成一个HTML格式的测试报告,显示了每个源代码行被执行的次数、未被执行的代码行以及总体覆盖率等信息。另外,lcov还支持一些高级的功能,例如过滤不需要统计的文件和代码行等,可以根据实际需要进行配置。代码覆盖率测试是一种评估软件测试质量的方法,通过测量测试用例执行时实际覆盖到的源代码的比例,来判断测试的充分性。的文件,其中包含了测试覆盖率的数据。
2024-11-21 14:08:08
1153
原创 C/C++静态库和动态库(共享库)
如果一家公司或个人开发者不希望公开他们的源代码(.c 文件),但他们又想让其他人能够使用这些代码的功能,他们可以选择将这些源代码编译成库文件,通常是以静态库(.a 文件)或者共享库(如 .so 或 .dll 文件)的形式发布。
2024-09-11 15:41:15
1504
原创 C/C++ 结构体变量和结构体指针的应用(含代码示例)
结构体指针和结构体变量在C或C++编程中都是用来处理结构体数据类型的方式,但它们之间存在一些基本的区别,这些差异影响着它们的应用场景和效率。
2024-06-24 14:53:39
2015
原创 什么是进程?线程?进程栈?线程栈?(小白请进!!!含代码示例和运行结果分析)
栈可以理解为内存的意思,即一个程序在被执行时成为一个进程时,就会拥有一块内存,用于储函数调用时的局部变量、函数参数、返回地址等信息。
2024-06-24 09:03:17
2634
原创 C/C++ 对文件目录进行操作的常用函数
这些函数构成了在C语言中进行目录操作的基础工具集,可以用于遍历目录、创建/删除目录、改变当前目录以及获取目录或文件的元数据信息等操作。
2024-06-19 16:57:41
1038
原创 C/C++ 操作文件常用的函数
文件操作函数构成了进行文件输入输出(I/O)的基础,在C语言编程中扮演着核心角色。这些函数允许程序读取外部文件的数据、向文件写入数据,以及管理文件的打开、关闭、定位等操作。
2024-06-19 11:58:12
962
原创 [Linux]cppcheck静态检查代码和valgrind内存泄露动态检查
cppcheck是一个静态代码分析工具,它可以在不运行程序的情况下检查C/C++源代码。Valgrind则是一个动态分析工具,擅长检测内存管理问题,如内存泄漏、访问已释放的内存、不正确的使用malloc/free等。
2024-06-01 17:42:59
1074
1
原创 API是什么
API是“应用程序编程接口”(Application Programming Interface)的缩写,它是一套规则、协议和工具,用于构建软件应用。API定义了不同软件组件之间如何交互,允许开发者更容易地使用某些功能,而无需了解其内部实现细节。通过使用API,开发者可以高效地复用代码、接入外部服务、构建复杂功能,同时保持代码的模块化和可维护性。
2024-06-01 16:07:53
3931
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人