自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

海阔天空的专栏

专注嵌入式开发

  • 博客(100)
  • 资源 (1)
  • 收藏
  • 关注

转载 C语言实现内存池

转自:http://blog.csdn.net/szkbsgy/article/details/50491216,我根据自己情况做了部分修改。在编程中,为了避免由于频繁的malloc/free产生内存碎片,通常会在程序中实现自己的内存管理模块,即内存池。内存池的原理:程序启动时为内存池申请一块较大的内存,在程序中使用内存时,都由内存池进行分配,不再使用的内存交给内存池回收,用于再次分配。内存池一般...

2018-03-16 17:35:55 1410

原创 根据system函数返回值确定命令是否执行成功

#include #include #include #include int system_cmd(char *cmd){ pid_t status; status = system(cmd); if (-1 == status) { printf("create child process fail!\n"); r

2018-01-31 10:45:45 796

转载 在Linux中如何利用backtrace信息解决程序崩溃的问题

一、导读在程序调试过程中如果遇到程序崩溃死机的情况下我们通常多是通过出问题时的栈信息来找到出错的地方,这一点我们在调试一些高级编程语言程序的时候会深有体会,它们通常在出问题时会主动把出问题时的调用栈信息打印出来,比如我们在eclipse中调试java程序时。当这些换到Linux上的C/C++环境时情况将变的稍微复杂一些,通常在这种情况下是通过拿到出问题时产生的core文件然后再利用

2018-01-29 10:21:13 31967 8

转载 C语言实现CRC32算法

static const unsigned int crc32tab[] = { 0x00000000L, 0x77073096L, 0xee0e612cL, 0x990951baL, 0x076dc419L, 0x706af48fL, 0xe963a535L, 0x9e6495a3L, 0x0edb8832L, 0x79dcb8a4L, 0xe0d5e91eL, 0x97d2d988L,

2017-08-11 17:37:52 20485 4

转载 C语言实现MD5算法

#include #include #include #include typedef unsigned char *POINTER;typedef unsigned short int UINT2;typedef unsigned long int UINT4;typedef struct{ UINT4 state[4]; UINT4 count[2]; uns

2017-08-11 09:15:58 1442

转载 openwrt系统设置STA模式或AP模式

操作步骤链接为http://blog.csdn.net/luck_good/article/details/24047619

2017-06-14 17:14:55 9088

转载 scp命令来实现LINUX间传送文件

scp命令:scp命令是SSH中最方便有用的命令,可以在虚拟机与linux设备之间传送文件。并且在传输过程中仍是使用ssh加密的。将远程主机的/tmp/test 文件复制到本地的/bak文件夹下 scp -p [email protected]:/tmp/test /bak将本地/bak/1234 文件复制到远程主机的/tmp路径下 scp -p /

2017-05-18 18:32:04 480

转载 git中报unable to auto-detect email address 错误的解决办法

昨天刚配置好的git,今天刚要commit一些修改,就遇到了这个问题** Please tell me who you are.Run  git config --global user.email "[email protected]"  git config --global user.name "Your Name"to set your accoun

2017-04-01 11:25:55 7781 1

转载 单播、多播(组播)和广播的区别

单播、多播和广播单播”(Unicast)、“多播”(Multicast)和“广播”(Broadcast)这三个术语都是用来描述网络节点之间通讯方式的术语。那么这些术语究竟是什么意思?区别何在?1.单播:网络节点之间的通信就好像是人们之间的对话一样。如果一个人对另外一个人说话,那么用网络技术的术语来描述就是“单播”,此时信息的接收和传递只在两个节点之间进行。单播在网络中得到了广泛的应用,网络

2017-03-23 10:53:49 411

转载 使用udhcpc能获取到DHCP自动分配的IP,但是该IP却没有设置到网卡上

udhcpc是一个面向嵌入式系统的非常小的DHCP客户端,字母的缩写微- DHCP -客户端(μDHCPc)。1.udhcpc -i eth0udhcpc只是获取一个IP,我们需要把\busybox-1.1.2\examples\udhcp下的脚本simple.script改名为default.script,放在开发板上的/usr/share/dhcpc/目录下,才能将获取的IP写到指

2016-12-14 14:44:20 9822 1

转载 图像压缩比

很多人都问我如何计算图像的压缩比,在这里我写下自己对压缩比的理解。有损压缩和无损压缩(近无损)压缩比一般差很多。我主要做位图的无损压缩,最好也就能达到2,不像做变换的,能有十几倍还多。  具体例子:    位图来看。512*512全彩图像。             512*512*3=786432byte            如果你压缩完的图像大小为462607byt

2016-08-03 10:39:08 16136 1

原创 TFTP在linux上使用

使用TFTP传东西到板子上。 cp ~/work/nfs/hi3531 ~/tftpboot/ telnet  板子ip# tftp -gr hi3531  虚拟机IP

2016-06-12 09:48:29 555

原创 如何杀掉指定进程的进程号

在我的程序中有两个进程,一个是“udhcpc -i eth0”,一个是“udhcpc -i eth1”,我想在程序中找到其中一个的pid并杀掉它,这个通过ps、grep、awk、kill的组合命令可以做到。 ps |grep "eth1"|grep -v "grep"|awk '{print $1}'|xargs kill -9

2016-05-31 13:56:50 1675

转载 更改ubuntu对话框中的关闭最大化最小化按键放到对话框右侧

相信有很多朋友是先成为为windows用户,然后才能为ubuntu用户的。做为windows用户,对最小化/最大化/关闭按钮放在右边,认为是一件理所当然的事。因此对ubuntu将它们放在左边多少有点不适应。下面让我们在ubuntu中试试如何改变这点:1. 打开终端,并输入gconf-editor,或者通过界面操作“单击左上角的应用程序-系统工具-配置编辑器”,从而打开Ubuntu的Config

2016-04-11 15:23:01 3687 1

原创 QT学习

QT学习之路系列专题2:http://blog.51cto.com/zt/20/1/QT学习系列专题1:http://www.devbean.net/2012/08/qt-study-road-2-intro/

2016-03-24 09:27:57 371

原创 SHELL命令查找文件的方式

find . -name *.sh | xargs ls -l  for aaa in $(find . -name "*.sh");do ls -l $aaa;done

2016-03-18 11:51:55 608

转载 C++继承:公有,私有,保护

公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。1. 公有继承(public)公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问。2. 私有继承(private)私有继承的特点是基类的公有成员和保护成员都作为派生类的私有

2016-03-11 09:37:02 347

转载 Linux中的popen函数

popen() 函数 用 创建管道 的 方式启动一个 进程, 并调用 shell. 因为 管道是被定义成单向的, 所以 type 参数 只能定义成 只读或者 只写, 不能是 两者同时, 结果流也相应的 是只读 或者 只写.command 参数 是 一个 字符串指针, 指向的是一个 以 null 结束符 结尾的字符串, 这个字符串包含 一个 shell 命令. 这个命令 被送到 /bin/s

2016-03-03 14:56:33 1083

原创 海思SDK包中make menuconfig的记录

如果在海思SDK内核中修改了config内容,那么需要拷贝当下的 .config  到../linux-3.10.y.patch/arch/arm/configs/hi3716mv310_defconfig

2015-12-28 11:03:04 1605

原创 git push -f

有的时候使用GIT工作时,会遇到一下这种问题,Pushing to [email protected]:519ebayproject/519ebayproject.gitTo [email protected]:519ebayproject/519ebayproject.git ! [rejected] master -> master (non-fast-forward)error:

2015-12-24 13:32:50 21861 4

原创 v310增强型项目蓝牙集成的问题

已解决的问题:1.扫描后再次扫描时,之前扫描到的设备不显示出来,后期处理后,设备显示出来了,但是已配对设备显示为未配对;2.实现了获取远端设备是否配对和是否连接的功能;3.实现了连接与取消连接远端设备的功能,并解决了取消连接响应有延迟的问题。4.配对BLE遥控器已经能够成功,但是连接会失败;目前存在的问题:1. 配对后重启再次扫描,远

2015-10-22 18:38:57 623

原创 Linux系统上低功耗蓝牙遥控器开发项目笔记

BLUEZ版本:bluez5.30扫描:1.扫描LE设备时,扫描到一个设备会调用device_found_callback。2.bluetoothd启动后,会调用trigger_passive_scanning函数,即适配器默认启动被动式扫描来监听远端设备的广播。如果使用bluetoothctl工具开启scan on方式,则适配器会关闭被动扫描后启动主动式扫描。使用scan

2015-10-07 13:48:23 3559

原创 ubuntu上防火墙的关闭与开启的命令

查看防火墙状态sudo ufw status​开启/关闭防火墙 (默认设置是’disable’)sudo ufw enable|disable​

2015-06-07 21:31:39 15256

转载 exit和_exit的区别

#include #include #include int main(void){    pid_t pid;    if((pid=fork())==-1)    {        printf("error");    }    else if(pid==0)    {        printf("ok");        exit(0)

2015-05-18 22:38:32 567

转载 在vi中打开多个文件,复制一个文件中多行到另一个文件中

1、vi a.txt b.txt或者vi *.txt2、文件间切换:n切换到下一个文件,:wn保存再切换:N到上一个文件,:wN保存再切换:.=看当前行3、比如在一个文件里:100,200y4、:n到第二个文件,输入:600到第600行,按p粘贴(或者输入:600p)5、退出:wq!

2015-05-18 14:16:37 11001

转载 wpa_supplicant的用法

最近要用到wpa_supplicant,但是在网上查询了一下,很多都是关于wpa_supplicant的开发,很少涉及到使用方面,个人通过各种资料总结和试验了一番。百度经验:jingyan.baidu.com工具/原料 linux百度经验:jingyan.baidu.com方法/步骤 1命令格式:wpa_s

2015-05-04 11:35:11 902

转载 c++中的extern “C”

比如说你用C 开发了一个DLL 库,为了能够让C ++语言也能够调用你的DLL 输出(Export) 的函数,你需要用extern "C" 来强制编译器不要修改你的函数名。通常,在C 语言的头文件中经常可以看到类似下面这种形式的代码:#ifdef __cplusplus  extern "C" {  #endif    /**** some declarat

2015-03-12 22:08:06 1380

转载 tar 解压缩命令

tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。-z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到标准输出

2014-05-15 11:39:45 522

转载 Makefile学习(1):Makefile 中:= ?= += =的区别

在Makefile中我们经常看到 = := ?= +=这几个赋值运算符,那么他们有什么区别呢?我们来做个简单的实验新建一个Makefile,内容为:ifdef DEFINE_VRE    VRE = “Hello World!”elseendififeq ($(OPT),define)    VRE ?= “Hello World! First!”endifif

2014-05-09 10:18:31 1563

转载 Linux命令:rm 命令

rm是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。1.命令格式:rm [选项] 文件… 2.命令功能:删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使

2014-05-08 16:05:20 675

转载 堆和栈的区别(转过无数次的文章)

一、预备知识—程序的内存分配    一个由C/C++编译的程序占用的内存分为以下几个部分    1、栈区(stack)—   由编译器自动分配释放   ,存放函数的参数值,局部变量的值等。其    操作方式类似于数据结构中的栈。    2、堆区(heap)   —   一般由程序员分配释放,   若程序员不释放,程序结束时可能由OS回    收   。注意它与数据结构中的堆是两

2014-04-25 16:07:58 442

转载 git push用法和常见问题分析

在使用git 处理对android的修改的过程之中总结的.但不完善 Git push$ git push origin test:master         // 提交本地test分支作为远程的master分支$ git push origin test:test              // 提交本地test分支作为远程的test分支如果想删除远程的分支呢?类似于上面,如

2014-04-11 11:43:51 5103

转载 Git 过滤文件,控制上传

文章源自http://blog.csdn.net/hustpzb/article/details/8649545在Git的版本控制中,可能有些文件是不需要加入控制的,那我们在提交代码时就需要忽略这些文件,下面讲讲应该怎么给Git配置一些忽略规则。有三种方法可以忽略掉这些文件,这三种方法都能达到目的,只不过适用情景不一样。(1).针对单一工程排除文件,这种方式会让这个工程

2014-03-04 13:54:22 792

转载 2014,智能电视与功能电视的岔路口

2014,智能电视与功能电视的岔路口  就像当年手机的变革一样,现在轮到电视机了。来自慧聪网的消息:“2013年中国基于Android系统的智能电视出货量已超过电视总量的50%,比例逐年上升。”与此同时,智能电视与功能电视发展的岔路口也到来了。  如果你问我2013年电视领域核心的问题是什么,可以非常简单地一句老话概括:“人民日益增长的物质文化需求同落后的社会生产力之间的矛

2014-02-20 22:23:28 952 1

转载 git命令的说明(更新中...)

1. git add:将文件加入到索引库中,等待提交。2. git commit: 根据索引库的内容,提交文件到远程库。3. git config --global user.name wangk: 设置用户名称4. git config --global user.email [email protected]: 设置邮箱5. git checkout test.c: 从远程

2014-01-23 09:49:10 654

转载 source insight中如何可以添加makefile这样类型的文件?

手动添加一个Makefile这样的文件类型点击菜单栏Options -> Document Options ,然后再弹出的对话框中找到File filter,文件过滤的设置,里面肯能有*.c;*.h你在后面添加Makefile,注意前面加一个分号,要英文状态下的分号,效果如下:*.c;*.h;Makefile关闭对话框最后,重新添加一下文件,点击Project -> Add a

2013-12-27 16:07:59 5435

转载 内存对齐的规则以及作用

首先由一个程序引入话题: 1 //环境:vc6 + windows sp2 2 //程序1 3 #include 4 5 using namespace std; 6 7 struct st1 8 { 9 char a ;10 int b ;11 short c ;12 };13 14 struct st21

2013-11-21 15:20:04 590

转载 C语言下单向链表的排序

/*对原链表根据FileId大小进行排序,并组成有序链表*/AD_PIC_LINK_T * CTI_AD_Pic_Sort(AD_PIC_LINK_T *head){AD_PIC_LINK_T *first; /*有序链表的表头指针*/AD_PIC_LINK_T *tail; /*有序链表的表头指针*/AD_PIC_LINK_T *p_min; /*指向某次遍历中FileId最小的节点的前驱节点的

2013-10-17 18:59:14 807

转载 薪水?发展?究竟怎样的工作才算是好工作?

有些时候我们拒绝来一个看起来很有发展的工作到原因却是因为工资,又有一些人为了那一个没有工作的实的岗位却偏偏往大企业里钻,到底怎样的工作才是好工作?      衡量生活的最终标准是幸福,而工作是生活中很重要的一部分,因此衡量工作好不好,一个很重要的标准也应该是:这份工作能给你带来多大的幸福感?      我面试过一些名校的毕业生,每次我都会问同一个问题:你想要找一份怎样的工作。每次的回答都千

2013-09-05 19:30:04 745

转载 对自己拿到的工资不满意?想想下面8个原因。

得不到自己认为应该得到的薪水,可能有以下8个原因。如果这些原因对你都不适用,那么,跟老板谈谈加薪的事情吧。如果老板坚持不给你加薪,你可以考虑换换工作,或者老老实实留下来,接受现实。得不到自己认为应该得到的薪水,可能有以下8个原因:1.入职前没有就薪水问题进行有效的商谈。在找工作时,人们是否就薪资进行商谈、怎样商谈,都存在很多变数。有的人当场接受了工作,有的人为了得到更多薪水而反复和雇主商谈

2013-09-03 18:55:05 1622

GIT使用手册

手册讲的很浅显易懂。

2017-08-04

空空如也

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

TA关注的人

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