自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (2)
  • 收藏
  • 关注

原创 如何方便地调试出函数被调用的地方

最近遇到个死机问题,想看下内存管理函数free、malloc的地方,方便调试,看到可以用宏函数的方式快速地在调用原free函数的地方加log,于是尝试了一把,体验很丝滑。

2023-06-20 17:00:59 203

原创 Linux一串指令修改密码及解析

指令:echo -e "123456\n123456" | passwd root描述:指令echo -e-e:激活转义字符。使用-e选项时,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出•\a 发出警告声;•\b 删除前一个字符;•\c 最后不加上换行符号;•\f 换行但光标仍旧停留在原来的位置;•\n 换行且光标移至行首;•\r 光标移至行首,但不换行;•\t 插入tab;•\v 与\f相同;•\ 插入\字符;•\nnn 插入nnn(八进制)所代表的A

2021-04-08 11:15:23 553

转载 对于linux下system()函数的深度理解(整理)

这几天调程序(嵌入式linux),发现程序有时就莫名其妙的死掉,每次都定位在程序中不同的system()函数,直接在shell下输入system()函数中调用的命令也都一切正常.就没理这个bug,以为是其他的代码影响到这个,或是内核驱动文件系统什么的异常导致,昨天有出现了这个问题,就随手百了一下度,问题出现了,很多人都说system()函数要慎用要少用要能不用则不用,system()函数不稳定?下面对system函数做一个简单的介绍:头文件#i nclude定义函数int system(const

2021-04-08 10:12:33 331

原创 T3:数组中重复的数字

题目一:找出数组中重复的数字。在一个长度为n的数组里的所有数字都在0~n-1的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是重复的数字2或者3.答案:bool duplicate(int numbers[], int length, int *duplication){ if(numbers == NULL || length <= 0) r

2020-08-31 19:07:48 100

原创 char和int在计算机中的存储和使用细节疑问

最近看书对一个细节有点疑惑,写了个测试代码测试了一下,代码如下:int main(){ //unsigned char ucPara=0; unsigned int ucPara=0; int nData=0; for(unsigned int i=0; i<ucPara-1; i++) { nData++; } printf("nData = %d\n", nData);}一、当ucPara为unsiged int时,输出:nData=4294967295(即0x

2020-07-09 17:32:55 279

转载 计算机中一个字等于多少个字节

转:https://blog.csdn.net/Fabulous1111/article/details/79525384这个概念问题一段时间后就容易忘记,还是记录一下:一个字等于多少个字节,与系统硬件(总线、cpu命令字位数等)有关,不应该毫无前提地说一个字等于多少位。正确的说法:①:1字节(byte) = 8位(bit)②:在16位的系统中(比如8086微机) 1字 (word)= 2字节(byte)= 16(bit) 在32位的系统中(比如win32) 1字(word)= 4字节(by

2020-06-30 14:55:49 4684

原创 c语言中的const的作用及解析

这兄弟写的很全面,直接贴链接:https://www.cnblogs.com/zhangjiansheng/p/6527708.html

2020-06-19 11:23:18 231

原创 Linux标准库函数源码glibc

GNU官方免费下载地址:ftp://ftp.gnu.org/gnu/glibc

2020-06-18 17:34:17 471

原创 简洁C语言实现FIFO

前言最近用到两个FIFO实现,这个实现比较简洁,利用了无符号数的特性,掩码的运用十分巧妙,分享一下。源码ringbuffer.h:/******************************************************************************** @File : ringbuffer.h* @Brief : This file provides all the fifo functions.************************

2020-06-17 14:57:02 1487

原创 Keil5编译UTF8码中文字符串报错

Preface最近想要在STM32平台传入中文字符串,一般keil默认选择的都是GB2312,服务器端需要视情况转换一下才可以正常显示。Text于是,我们把编码方式改成UTF-8,路径:Edit-Configuration-Editor-Encoding。完成之后编译,发现有几个字符串编译出错,有几个可以通过。这个时候需要点击魔术棒设置工程选项,选择C/C++,在Misc Controls中加上:--no-multibyte-chars编译测试成功。End不过,最后我还是没有用上,因为之

2020-05-27 15:38:08 9422 1

原创 memcpy、sprintf、strcpy、strncpy使用细节

简单记录一些字符串拷贝函数注意点,有错误和改进欢迎指出,随时更新。memcpyvoid *MEMCPY (void *dstpp, const void *srcpp, size_t len);严格遵照len的值进行拷贝,要注意两个指针的界限,遇到’\0’正常拷贝。sprintf用一个例子程序来说明一个注意点int main(int argc, char* argv[]){ char szMsgB[3] = {0}; szMsgB[0] = 0x01; szMsgB[1] = 0

2020-05-25 17:24:26 198

原创 MQTT如何保存离线消息(持久化)

最近做项目的时候需要把一个升级消息保存下来, 好让离线的设备收到后可以进行升级,但是Cleansession=0,Qos=1的情况下依旧无法实现离线保存,想想可能是mqtt服务器那边没有进行这个功能的配置。当时用retain实现了,有点鸡肋,今天项目完成个大概,去找做服务器的兄弟确定了一下,也查询了一些资料,做个简单总结。不过暂未验证。持久化实际上,这个功能应该叫做持久化,以mosquitto为例,在配置文件mosquitto.conf中如下:# ===========================

2020-05-21 10:27:33 9613

原创 HTTP GET 下载文件报文格式分析与应用

最近有个项目需要用无线模块下载文件,由于手头已经有一个HTTP GET的实现,那么就用HTTP来做了。做完之后我就在想,为什么一定要用HTTP呢,为何不能用FTP?当然,手头没有现成的实现,想想应该会复杂一些。简单百度一下:FTP是专门用于文件传输的协议。HTTP只是超文本传输协议(他的传输功能最原始的目的仅仅只是为了将超文本的信息(包括图象视频等)传到你的机子上就行了)网上还提到了FTP更加好管理。我只是下载一个100K的文件,而且项目环境之前也用了HTTP,就暂时用HTTP把。回过头有时间好好了解一

2020-05-08 20:21:28 2365

原创 Keil自定义快捷键、设置字体方法

一、之前常用VC浏览代码,Keil中的快捷键使用不习惯,那么如何设置Keil的快捷键呢?1.Edit->Configuration->Shortcut Keys2.下面就得找找你想设置的快捷键了,得耐心找找。我想设置查找定义,前进,后退。名称分别是:查找定义:Edit:Advanced:Go to Definition of current Word前进:Edit:Na...

2019-11-15 16:33:33 1375

原创 带内与RFC2833中的DTMF传输

笔记客户处TDM侧误检测一个DT,趁这次机会了解一下DT的传输。带内:DT与源语音混在一起AD转化成RTP来传输。俗称透传,需要对端通过算法判断,误判率较高。CPU可以采取切音的方式(即通过算法检测出DT并将这一段语音静音),然后通过RFC2833传给对方以提高可靠性。RFC2833:属于带外传输,DT编码成RTP-EVENT来传输,与RTP源语音区分开来,不会误判。...

2019-11-07 15:25:25 1052

原创 Win10挂载出现host is down

Win10挂载出现host is down同事的电脑刚装上win10发现共享后无法在一个老的编译服务器上挂载,命令、共享没有问题,防火墙也都关闭了,百思不得其解。解决在网上搜索解决办法,看到一个方法是加上vers=2.0,如下命令:sudo mount -t cifs -o vers=2.0,username=xxx,password=xxx,rw,nounix,noserverino,u...

2019-10-11 14:16:24 4839

原创 UTF-8,Unicode,GB2312编码转换(C语言)

UTF-8,Unicode,GB2312编码转换(C语言)最近在做MQTT客户端的时候,遇到需要将输入的GB2312中文转换为UTF8的问题,这边做一个整理。UTF-8转GB2312/*! * \brief Gb2312至UTF8 转换函数 * * \details Gb2312 -> Unicode -> UTF8 * * \param const ch...

2019-10-11 10:11:00 5208 2

原创 如何判断芯片架构是大端还是小端

你的机器是大端还是小端?代码int checkCPUendian(){ union{ unsigned long int i; unsigned char s[4]; }c c.i = 0x12345678; return (0x12 == c.s[0]);}分析首先清楚一点,数组元素从0 ~ n按低地址到高地址排列。如果返回为真,即高位数据(0x12)放在低地址...

2019-10-10 11:15:36 808

原创 SIP信令交互过程示例

一个简单的SIP信令交互过程如图:UAC发送INVITE消息,发起呼叫。 UAS回送100/Trying消息,表示呼叫已经到达,正在处理中。 UAS回送180/Ringing消息,表示振铃中。 UAS回送200/OK消息,表示摘机。 UAC发送ACK消息,表示确认摘机。 UAC发送BYE消息,表示挂机。 UAS回送200/OK消息,表示确认挂机。...

2019-07-02 17:20:44 17066

原创 Beyond Compare 4过期解决方法

1、打开运行窗口,输入regedit操作注册表。2、找到:计算机\HKEY_CURRENT_USER\Software\Scooter Software\Beyond Compare 4\CacheID删除之。

2019-06-28 16:31:43 5916 1

原创 编译CentOS 6.5内核

1.下载内核源码CentOS 内核下载地址:http://vault.centos.org  我想要下载6.5的,即进入http://vault.centos.org/6.5/os/Source/SPackages/目录下查找到kernel-2.6.32-431.el6.src.rpm下载即可。2.安装#groupadd mockbuild#useradd mockbuild -g

2017-02-08 15:35:43 228

转载 ANSI,ASCII,Unicode的区别与联系

快下班时,爱问问题的小朋友Nico又问了一个问题:"sqlserver里面有char和nchar,那个n据说是指unicode的数据,这个是什么意思。" 并不是所有简单的问题都很容易回答,就像这个问题一样。于是我答应专门写一篇BLOG来从头讲讲编码的故事。那么就让我们找个草堆坐下,先抽口烟,看看夜晚天空上的银河,然后想一想要从哪里开始讲起。嗯,也许这样开始比较好……...

2016-12-14 14:59:32 181

GB2312,Unicode互转码表

GB2312,Unicode互转码表

2019-10-10

DA7811程序SPI以及普通串行方式

这是我用SPI试调DA7811的代码,分享一下

2014-08-07

空空如也

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

TA关注的人

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