自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

IOT_SONG的博客

技术,心得

  • 博客(46)
  • 资源 (2)
  • 收藏
  • 关注

原创 Linux下makefile编译高亮脚本(异常简单)

在Linux环境下做c/c++开发,经常使用makefile/cmake作为工程管理工具,但是makefile先天有个缺点,就是在工程庞大的情况下,难以查找某个代码报错信息。就像下面这个样子。 下面我们使用代码高亮脚进行优化。 可以明显地看到错误提示、错误列表、警告列表。下面上传makefile代码高领脚本。其实就这点东西。将下列脚本保存一下,命名为error文件(随你...

2019-01-29 12:51:08 1189 1

转载 C 语言匿名结构、匿名联合

https://blog.csdn.net/openblog/article/details/7548363#包括 <stdio.h>中 结构 人 { char * name; char 性别; INT 年龄; 诠释 重量; 结构 { int area_cod...

2018-07-08 19:13:49 1495

原创 C语言复合字面量

/ * C99增加的特性,复合字面量(composite literal)。一旦熟悉并使用,便会体会到简洁强大的表达对,复合字面量,就是可以随时定义,随时赋值的数组字面量。两步构建出来。形如(type [])表示需要构建的数组类型,如:(int []),(int * p),还能是自定义的类型(MyType [])2。跟着{}表示数组内容* / #include <stdio.h> ty...

2018-07-08 17:10:02 915 2

原创 gun 数组初始化

// 只对感兴趣的索引值进行赋值,而不管下标的顺序//数组赋值另一种方式,但只在gcc下编译通过,g++不能   static const float const _app_md_sensitivity_map[] = { [SYS_MD_SENSITIVITY_LOWEST] = 0.8, [SYS_MD_SENSITIVITY_LOW] = 0.6, [SYS_MD_SENSITIVITY_M...

2018-05-09 16:55:25 369

原创 source insight 配置不同格式字体大小

大项目中使用source insight 看代码非常方便,网上source insight 的monokia主题默认没有配置不同格式字体大小差异,需要手动配置。需要配置函数字体,选择函数,右键选择style 即可,全局变量、结构、枚举也一样,一般会配置成斜体。配置字体大小:点击Done 保存。没反应?? 快捷键 alt + f12 配置完全局变量、结构、枚举为斜体后的最终效果:最后附上source...

2018-05-05 23:27:02 5083 1

转载 setvbuf函数,setlinebuf

 为什么要使用调用setvbuf函数如果你的内存足够大,可以把文件IO的BUF设置大一些,这样每次你用的fopen /的fread / fwrite的/的fscanf / fprintf中语句的时候,都会在内存里操作,减少内存到磁盘IO读写的操作次数,提高系统效率。如果你的程序的功能涉及到类似数据库,视频,音频,图像处理等大量需要爆发式磁盘到内存的IO情况下,可以考虑用setvbuf用来进行优化内...

2018-05-04 19:40:08 1635

原创 卸载重装后 Source Insight cannot initialize 问题

卸载重装后发生 Source Insight cannot initialize 错误,原因是用户目录里面没有 Source Insight4.0这个文件夹。 按百度的方法,删除注册表,再重装,没用。。;最后直接把老大的这个目录拷贝过来,完美!!...

2018-05-02 19:12:12 2876

转载 ubuntu由于使用了/bin/sh 导致找不到pushd命令

编译海思平台模块时Makefile出现错误:pushd命令找不到ubuntu由于使用了/bin/sh 导致找不到pushd命令切换回/bin/bash即可,但是我在shell中声明#!/bin/bash还是继续报错看到一句解释如下:   This has to do with /bin/sh being linked to /bin/dash instead of /bin/bash in ubu...

2018-05-02 18:01:26 962

原创 unrar命令解压rar

压缩tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpgtar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gztar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2...

2018-05-02 17:53:04 18135

转载 error while loading shared libraries: libz.so.1

编译Linux内核时:/home/catia/android-sdks/platform-tools/aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory/home/catia/android-sdks/platform-too...

2018-05-02 17:42:16 4569

原创 sourceinsight 宏代码

github上的宏代码资源链接:https://github.com/long2015/SI-Plugin,(sourceinsight 4不能直接用)经过修改的宏代码:https://download.csdn.net/download/iot_song/10383883(修改了结构体、枚举重定义类型和sourceinsight 4不能直接用的问题)sourceinsight 是查阅代码的最牛逼...

2018-04-30 14:33:10 1056

原创 Linux常用设置

linux中的常用命令(linux的命令非常多,没有必要全部都去记忆,记忆常见的)  除非在坐的各位同学:想做系统运维,网络管理  脑袋有一个大致的印象:具体参数不清楚没关系==================  (1)生成软链接,符号链接(类似于windows中的快捷方式)          ln 文件名  软链接名  -s  (注意不要在共享中生成软链接,windows不支持这种格式的文件) ...

2018-04-11 21:29:26 276

原创 Linux下GDB调试工具

1.常用的调试代码的方法:      不管你使用哪种方法调试代码,都需要有足够的耐性      方法一:在代码中加入打印语句--》在关键语句的前后(函数调用),关键变量      方法二:使用gdb调试(原理也是让程序分步执行,打印关键变量的值)           (1)使用gdb在编译程序的时候必须加上-g选项(将程序的调试信息添加到生成的可执行程序中)                  gc...

2018-04-02 10:02:21 198

原创 指针分析

#include <stdio.h>int main(int argc, char const *argv[]){ int   a = 100; int (*p1); p1 = &a; a  = 1000; *p1 = 1000; //////////////////// char  ch = 'w'; char (*p2); p2 = &ch; ch  = 'x';...

2018-04-01 15:22:38 658

原创 Linux进程内存分析

#include <stdio.h>#include <stdlib.h>//跑飞测试int global1 = 30; // .data 数据段int global2; // .bss 数据段char s[1000];int main(int argc, char const *argv[]) // .text 正文段/代码段{ int a = 100; // stack...

2018-04-01 15:19:25 960 1

原创 Linux下minicom的安装和使用

因为现在电脑基本不配备串行接口,所以,usb转串口成为硬件调试时的必然选择。目前知道的,PL2303的驱动是有的,在dev下的名称是ttyUSB0 默认情况下ubuntu已经安装了USB转串口驱动(pl2303)。1、# lsmod | grep usbserial如果有usbserial,说明系统支持USB转串口。2、插上USB转串口,在终端输入命令#dmesg | grep ttyUSB0,如...

2018-03-31 11:46:23 13477

原创 下面的函数有什么错误: int square(volatile int *ptr) { return *ptr * *ptr; }

今天面试被问到一个问题,答不上来,下面的函数有什么错误: int square(volatile int *ptr){   return *ptr * *ptr; }亲测:编译没任何警告,运行没问题百度的解析:这段代码是个恶作剧。这段代码的目的是用来返指针*ptr指向值的平方,但是,由于*ptr指向一个volatile型参数,编译器将产生类似下面的代码:   int square(volatile...

2018-03-18 21:09:06 3520

原创 字节流与结构体数据转换

/**  * @brief  把缓冲区的数据打包为一个格式包  * @details  从网络格式的数据转换为处理器的包格式,以方便数据处理。  * @param  buffer 指向输入的要转换的数据绥冲区地址  * @param  packet 指向要输出的数据包地址  * @return 如果成功转换,则返回转换的缓冲区数据长度,失败则返回0  * @retval c

2018-02-03 16:18:54 1939

原创 sqlite 动态库 relocation R_X86_64_32 against `.

1:生成.o和。so文件都要加-FPIC2:系统位数不同:64位系统下编译32位程序,加-m32参数

2018-01-16 12:39:31 597

转载 交叉编译工具 No such file or directory

交叉编译是嵌入式开发非常重要的(应该说是必须的)一个环节,但是最近在实体Linux机器上使用交叉编译工具却经常遇到一个问题:交叉编译工具版本正确,安装步骤正确,环境变量设置也正确,但是在运行arm-linu-gcc -v时却一直报bash: /opt/arm-2009q3/bin/arm-linux-gcc: 没有那个文件或目录的错误,很是郁闷,一番google终于发现了问题原因:我的Linu

2018-01-15 22:50:47 1784

原创 Ubuntu 中文man手册安装方法

Ubuntu 下查看中文man手册方法:1,打开终端,输入以下命令安装中文 man 手册sudo apt-get install manpages-zh2,查看man 手册安装到哪里dpkg -L manpages-zh | less查看到安装在/usr/share/man/zh_CN3,设一个中文man别名     修改 ~/.

2018-01-12 19:41:15 1380 1

原创 ubuntu安装ftp服务器

sudo apt-getinstall vsftpdsudo vi /etc/vsftpd.conf#禁止匿名访问anonymous_enable=NO#接受本地用户local_enable=YES#允许上传write_enable=YES#用户只能访问限制的目录chroot_local_user=YES#设置固定目录,在结尾添加。如果不添加这一行,

2018-01-08 19:29:46 325

转载 linux遍历文件夹(目录树)nftw

http://www.cnblogs.com/harlanc/p/6991041.html#define _XOPEN_SOURCE 500#include #include #include #include #include /*http://www.cnblogs.com/harlanc/p/6991041.htmlFTW_F fpath是一个普通

2018-01-04 00:05:15 4680

原创 alias命令

假如为这个长命令建立一个名为goconfig的别名,在Bash提示符下键入如下命令:$ alias goconfig=’cd /usr/X11/lib/X11’alias ll='ls -l --color'这样我们下次可以直接输入ll来代替这一长串或更长的命令。但是只是这样的话,会在重启之后失效,解决办法是编辑~/.bashrc文件vim ~/

2018-01-02 22:55:01 426

原创 虚拟机崩溃后vi无法保存文件

vi -r pthread_home.c rm -rf .pthread_home.c.swp

2018-01-02 20:33:50 997

原创 xsell5 momokai配色

保存为.xcs文件,导入配色[monokai]text=ffffffcyan(bold)=a6e22etext(bold)=ffffffmagenta=f92672green=80ff80green(bold)=80ff80background=272822cyan=a6e22ered(bold)=de8e30yellow=66d9efmag

2018-01-02 11:00:08 658

原创 vim配置

1 " 设置字符编码                                                                         2 set fileencoding=utf-8                                                                 3 set fileencodings=utf-

2018-01-01 19:49:19 204

原创 vim跳转到定义类型

Vim跳转设置进出 /usr/include目录执行sudo  ctags -R  生成tags文件--关联文件打开文件sudo vim /etc/vim/vimrcset tags+=/usr/include/tags                                                           set tags+=./tag

2018-01-01 19:48:24 1140

原创 避免僵尸进程

//测试系统能创建多少进程// 4752// 4753// 4754// 4755//当子进程退出,父进程还在运行,并且父进程没有回收子进程资源,//那么这个子进程就成了僵尸进程(子进程资源必须由父进程回收)#include #include #include #include #include #includ

2018-01-01 15:22:33 183

原创 僵尸进程

//测试系统能创建多少进程// 4752// 4753// 4754// 4755//当子进程退出,父进程还在运行,并且父进程没有回收子进程资源,//那么这个子进程就成了僵尸进程(子进程资源必须由父进程回收)#include #include #include #include int main(void){

2018-01-01 15:13:44 208

原创 vm共享文件夹问题

已经配置好,不能登录--关机重启

2017-12-26 08:45:43 344

原创 java无法加载主类问题解决

1,运行时不加.class后缀2,path最后缺少分号

2017-12-24 09:59:16 554

原创 sublime设置

"caret_style": "phase","color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme","font_face": "仿宋","font_size": 14.0,"ignored_packages":["Vintage"],"update_check": false,"wor

2017-01-03 18:19:23 477

转载 指针详解

指针的概念指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。先声明几个指针放着做例子:例一:

2016-08-01 20:30:58 357

原创 佛祖神兽代码,永无bug

/*                   _ooOoo_                  o8888888o                  88" . "88                  (| -_- |)                  O\  =  /O               ____/`---'\____             .'  \\|     |//  `.  ...

2016-07-31 14:54:42 693

原创 sublime个性化设置

{"caret_style": "phase","color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme","expand_tabs_on_save": true,"font_face": "仿宋","font_size": 11.0,"ignored_packages":["Toggle Cs

2016-07-31 14:23:38 591

原创 C/C++头文件大全

C、传统 C++#include     //设定插入点#include      //字符处理#include      //定义错误码#include      //浮点数处理#include     //文件输入/输出#include     //参数化输入/输出#include    //数据流输入/输出#include     //定义各种数据类型最值

2016-07-23 14:36:27 546

原创 C99布尔类型

//导入 stdbool.h 来使用布尔类型#include #include //计算n!,n的值在main中定义int main(void){ int n = 10; //计算叠乘数 int sum = 1; //用来存放叠乘的结果 bool flag = false; //叠乘标记 int num = n; //循环次数

2016-07-23 14:06:20 458

原创 电子设计竞赛样片申请

寒假篇之 半导体公司及样品申请有朋友在回复寒假篇(上)时说得好:电设竞赛,各种芯片还是要囤一些的。这可是绝对的经验。最后比赛时,比得就是谁的芯片种类多、指标好、用的熟。而这些芯片是哪儿来的,大部分绝对不是买来的,即使你的学校支持力度很大,资金很充沛,也最好不要花这些钱去买。因为好多芯片小批量购买都很贵,以模数转换器 ADC 为例,大家可以去查查淘宝上TI 的 ADS 系列都是什

2016-07-22 17:50:44 1651

原创 OTL,OCL,BTL电路的性能特点和差别

OTL,无变压器功放电路,优点是可以使用单电源供电,是电池供电的首选电路。缺点是需要通过体积较大的电解电容作为输出耦合,但由于电容的影响,低频特性差。OCL,无输出电容功放电路,优点是省去体积较大的输出电容,频率特性好,效率较高,缺点是需要双电源供电,对电源的要求稍高。BTL,平衡桥式功放电路,由两个相同的OCL电路组成一个功率更大的功放电路,无论使用单电源还是双电源供电都不需要输出电容,

2016-07-11 13:15:01 5238

source insight养眼主题monokia

source insight养眼主题monokia,

2018-05-01

在sourceinsight 4中可以使用的quicker.em

quicker.em可以在sourceinsight 3.5中很好使用;也很方便 但是,将quicker.em添加到sourceinsight 4中,绑定快捷键,根本就找不到autoExpand的宏。 可能主要原因是:souceinsight 4对宏解析的规范有些变动;所以quicker.em某些地方产生了冲突(代码的注释)。 具体修改方法: 大概3217行,有一段注释: //如果是{表示函数参数头结束了 将中间的{,用单引号括起来;即改成: //如果是'{'表示函数参数头结束了 同理: 大概4497行,有一段注释: //只提取字符和# { / *作为命令 改成: // 只提取字符和'#','{','/','*'作为命令 这样quicker.em就可以很happy的在sourceinsight 4中使用。

2018-04-30

空空如也

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

TA关注的人

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