- 博客(46)
- 资源 (2)
- 收藏
- 关注
原创 Linux下makefile编译高亮脚本(异常简单)
在Linux环境下做c/c++开发,经常使用makefile/cmake作为工程管理工具,但是makefile先天有个缺点,就是在工程庞大的情况下,难以查找某个代码报错信息。就像下面这个样子。 下面我们使用代码高亮脚进行优化。 可以明显地看到错误提示、错误列表、警告列表。下面上传makefile代码高领脚本。其实就这点东西。将下列脚本保存一下,命名为error文件(随你...
2019-01-29 12:51:08
1298
1
转载 C 语言匿名结构、匿名联合
https://blog.youkuaiyun.com/openblog/article/details/7548363#包括 <stdio.h>中 结构 人 { char * name; char 性别; INT 年龄; 诠释 重量; 结构 { int area_cod...
2018-07-08 19:13:49
1590
原创 C语言复合字面量
/ * C99增加的特性,复合字面量(composite literal)。一旦熟悉并使用,便会体会到简洁强大的表达对,复合字面量,就是可以随时定义,随时赋值的数组字面量。两步构建出来。形如(type [])表示需要构建的数组类型,如:(int []),(int * p),还能是自定义的类型(MyType [])2。跟着{}表示数组内容* / #include <stdio.h> ty...
2018-07-08 17:10:02
1131
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
443
原创 source insight 配置不同格式字体大小
大项目中使用source insight 看代码非常方便,网上source insight 的monokia主题默认没有配置不同格式字体大小差异,需要手动配置。需要配置函数字体,选择函数,右键选择style 即可,全局变量、结构、枚举也一样,一般会配置成斜体。配置字体大小:点击Done 保存。没反应?? 快捷键 alt + f12 配置完全局变量、结构、枚举为斜体后的最终效果:最后附上source...
2018-05-05 23:27:02
5212
1
转载 setvbuf函数,setlinebuf
为什么要使用调用setvbuf函数如果你的内存足够大,可以把文件IO的BUF设置大一些,这样每次你用的fopen /的fread / fwrite的/的fscanf / fprintf中语句的时候,都会在内存里操作,减少内存到磁盘IO读写的操作次数,提高系统效率。如果你的程序的功能涉及到类似数据库,视频,音频,图像处理等大量需要爆发式磁盘到内存的IO情况下,可以考虑用setvbuf用来进行优化内...
2018-05-04 19:40:08
1760
原创 卸载重装后 Source Insight cannot initialize 问题
卸载重装后发生 Source Insight cannot initialize 错误,原因是用户目录里面没有 Source Insight4.0这个文件夹。 按百度的方法,删除注册表,再重装,没用。。;最后直接把老大的这个目录拷贝过来,完美!!...
2018-05-02 19:12:12
3128
转载 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
1102
原创 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
18566
转载 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
4798
原创 sourceinsight 宏代码
github上的宏代码资源链接:https://github.com/long2015/SI-Plugin,(sourceinsight 4不能直接用)经过修改的宏代码:https://download.youkuaiyun.com/download/iot_song/10383883(修改了结构体、枚举重定义类型和sourceinsight 4不能直接用的问题)sourceinsight 是查阅代码的最牛逼...
2018-04-30 14:33:10
1163
原创 Linux常用设置
linux中的常用命令(linux的命令非常多,没有必要全部都去记忆,记忆常见的) 除非在坐的各位同学:想做系统运维,网络管理 脑袋有一个大致的印象:具体参数不清楚没关系================== (1)生成软链接,符号链接(类似于windows中的快捷方式) ln 文件名 软链接名 -s (注意不要在共享中生成软链接,windows不支持这种格式的文件) ...
2018-04-11 21:29:26
343
原创 Linux下GDB调试工具
1.常用的调试代码的方法: 不管你使用哪种方法调试代码,都需要有足够的耐性 方法一:在代码中加入打印语句--》在关键语句的前后(函数调用),关键变量 方法二:使用gdb调试(原理也是让程序分步执行,打印关键变量的值) (1)使用gdb在编译程序的时候必须加上-g选项(将程序的调试信息添加到生成的可执行程序中) gc...
2018-04-02 10:02:21
284
原创 指针分析
#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
739
原创 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
1052
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
13914
原创 下面的函数有什么错误: 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
3776
原创 字节流与结构体数据转换
/** * @brief 把缓冲区的数据打包为一个格式包 * @details 从网络格式的数据转换为处理器的包格式,以方便数据处理。 * @param buffer 指向输入的要转换的数据绥冲区地址 * @param packet 指向要输出的数据包地址 * @return 如果成功转换,则返回转换的缓冲区数据长度,失败则返回0 * @retval c
2018-02-03 16:18:54
2116
原创 sqlite 动态库 relocation R_X86_64_32 against `.
1:生成.o和。so文件都要加-FPIC2:系统位数不同:64位系统下编译32位程序,加-m32参数
2018-01-16 12:39:31
720
1
转载 交叉编译工具 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
2119
原创 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
1445
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
375
转载 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
4792
原创 alias命令
假如为这个长命令建立一个名为goconfig的别名,在Bash提示符下键入如下命令:$ alias goconfig=’cd /usr/X11/lib/X11’alias ll='ls -l --color'这样我们下次可以直接输入ll来代替这一长串或更长的命令。但是只是这样的话,会在重启之后失效,解决办法是编辑~/.bashrc文件vim ~/
2018-01-02 22:55:01
477
原创 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
717
原创 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
1215
原创 避免僵尸进程
//测试系统能创建多少进程// 4752// 4753// 4754// 4755//当子进程退出,父进程还在运行,并且父进程没有回收子进程资源,//那么这个子进程就成了僵尸进程(子进程资源必须由父进程回收)#include #include #include #include #include #includ
2018-01-01 15:22:33
220
原创 僵尸进程
//测试系统能创建多少进程// 4752// 4753// 4754// 4755//当子进程退出,父进程还在运行,并且父进程没有回收子进程资源,//那么这个子进程就成了僵尸进程(子进程资源必须由父进程回收)#include #include #include #include int main(void){
2018-01-01 15:13:44
242
原创 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
559
转载 指针详解
指针的概念指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。先声明几个指针放着做例子:例一:
2016-08-01 20:30:58
410
原创 佛祖神兽代码,永无bug
/* _ooOoo_ o8888888o 88" . "88 (| -_- |) O\ = /O ____/`---'\____ .' \\| |// `. ...
2016-07-31 14:54:42
862
原创 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
642
原创 C/C++头文件大全
C、传统 C++#include //设定插入点#include //字符处理#include //定义错误码#include //浮点数处理#include //文件输入/输出#include //参数化输入/输出#include //数据流输入/输出#include //定义各种数据类型最值
2016-07-23 14:36:27
604
原创 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
517
原创 电子设计竞赛样片申请
寒假篇之 半导体公司及样品申请有朋友在回复寒假篇(上)时说得好:电设竞赛,各种芯片还是要囤一些的。这可是绝对的经验。最后比赛时,比得就是谁的芯片种类多、指标好、用的熟。而这些芯片是哪儿来的,大部分绝对不是买来的,即使你的学校支持力度很大,资金很充沛,也最好不要花这些钱去买。因为好多芯片小批量购买都很贵,以模数转换器 ADC 为例,大家可以去查查淘宝上TI 的 ADS 系列都是什
2016-07-22 17:50:44
1912
原创 OTL,OCL,BTL电路的性能特点和差别
OTL,无变压器功放电路,优点是可以使用单电源供电,是电池供电的首选电路。缺点是需要通过体积较大的电解电容作为输出耦合,但由于电容的影响,低频特性差。OCL,无输出电容功放电路,优点是省去体积较大的输出电容,频率特性好,效率较高,缺点是需要双电源供电,对电源的要求稍高。BTL,平衡桥式功放电路,由两个相同的OCL电路组成一个功率更大的功放电路,无论使用单电源还是双电源供电都不需要输出电容,
2016-07-11 13:15:01
5933
在sourceinsight 4中可以使用的quicker.em
2018-04-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人