自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 YUV410, YUV410V 格式内存排布

yuv410 yuv410v 内存排布

2023-07-26 17:44:50 128

原创 nanosleep() stdc 编译错误

从c99 开始, usleep() 已经被标识为deprecated(弃用),编译(c99/gnu99)会报错。并且提供新的nanlsleep() 可进行高达纳秒(ns, 十亿分之一秒 10的负9次方)级别精度的休眠函数。函数原型从time.h 头文件的描述可以看出是要在c99 及以上的版本中才能支持。

2023-06-24 12:31:50 228

原创 vscode 不同系统/版本 下载方式

vscode 对应不同OS及版本的下载链接

2023-06-09 14:46:49 1683

原创 获取三个数的中间值 宏

日常遇到较多的时间使用都是比较两个数的最大值 或者最小值,这两个处理过程很简单,都可以使用 宏MAX/MIN 来计算。今天碰到获取三个数的中间值使用情况,花费些时间思考,将个人思考的两种方法进行总结记录。方法 方法一 将三个数相加,然后减去三个数中的最大值和最小值,余下的就是中间值。 /* Macros for min/max. */#define MIN(a,b) (((a)<(b))?(a):(b))#define MAX(a,b) (((a)>(b))?(a)

2022-01-02 21:40:55 3094

原创 glibc中内存拷贝函数memcpy 与memmove 区别

memcpy 与memmove 均为内存拷贝函数,一直看到的都是说memmove 为安全的拷贝函数,而memcpy 为不安全的拷贝函数,本着好奇之心,查看了glibc2.2 版本的源码。void *memcpy (dstpp, srcpp, len) void *dstpp; const void *srcpp; size_t len;{ unsigned long int dstp = (long int) dstpp; unsigned long int

2021-07-04 20:27:59 236

转载 Makefile教程(绝对经典,所有问题看这一篇足够)

makefile很重要 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。因为,makefile关系到了...

2020-12-07 17:20:47 300

转载 makefile的执行过程

1.一次读取变量“MAKEFILES”定义的makefile文件列表2.读取工作目录下的makefile文件(根据命令的查找顺序“GNUmakefile“, ”makefile“, ”Makefile“,首先找到哪个就读取哪个)3.一次读取工作目录makefile文件中使用指示符“include“包含的文件4.查找重建所有已读取的makefile文件的规则(如果存在一个目标是当前读取的某一个makefile文件,则执行此规则重建此makefile文件,完成以后从第一步开始重新执行)5.初始化

2020-11-27 14:11:23 1869

原创 Shell中由指定字符分割字符串

Shell中由指定字符分割字符串问题描述:最近一直想要通过脚本来实现获取指定路径下,手动选择版本的功能,奈何一直抽不出时间。今天趁任务均等待他人回复时间中,解决了该问题。本文主要讲述解决通过shell获取路径字符串中最后的文件名方式,大佬可无视。以获取的路径 CUR_PATH=/Mac/User/Document/Demo/Shell/Splitdemo为例。解决代码:#!/bin/shCUR_PATH=`pwd`CUR_PATH='/Mac/User/Document/De.

2020-08-05 21:32:37 2082

原创 Mac 10.15 配置GNU gcc

mac 10.15.3中默认使用的gcc 为clang,而非gnu gcc。且mac编译工具与clang高度集成,最好不要重定向usr/bin的链接,很容易造成系统错误。记录下自己安装gnu gcc步骤:需要先安装好brew,如果下列的指令无法安装成功,就需要小伙伴们自行百度下brew安装。/usr/bin/ruby -e "$(curl -fsSL https://gitee.com/xueweihan/codes/vfrgh7z8qcjlx1ubwt6nk71/raw\?blob_name

2020-05-17 13:08:28 1005

原创 Linux 栈中数组访问越界导致死循环现象

1.引言最近在学习极客时间课程过程中碰到个挺有意思的关于数组和Linux 栈中增长方向的问题,特来与大家分享下。话不多说,先上代码int main(int argc, char* argv[]){ int i = 0; int arr[3] = {0}; for(; i<=3; i++){ arr[i] = 0; printf("hello world\n"); } return 0;}代码很简单。当使用gc

2020-05-10 17:06:28 377

原创 GDB调试总结

一 GDB简介GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具,GDB主要可帮助工程师完成下面4个方面的功能:启动程序,可以按照工程师自定义的要求随心所欲的运行程序。 让被调试的程序在工程师指定的断点处停住,断点可以是条件表达式。 当程序奔溃时,可以检查此时程序中所发生的事,并追索上文。 动态地改变程序的执行环境。作为一个嵌入式开发工程师没有VS这等可视化的强大IDE...

2019-01-26 17:52:36 257 1

vs code cpptools arm64

vs code cpptools arm64

2023-03-17

空空如也

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

TA关注的人

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