![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux Programming
文章平均质量分 94
yhguo2008
eee
展开
-
POSIX Timer
http://www.cnblogs.com/LubinLew/p/POSIX-Timer.htmlSYNOPSIS #include /* only timer_create need this header */#include int timer_create(clockid_t clockid, struct sigevent *restrict evp,转载 2016-07-16 14:32:33 · 584 阅读 · 0 评论 -
gvim配置及相关插件安装(过程详细,附图)
0.准备软件及插件。(a)gvim72.exe 地址ftp://ftp.vim.org/pub/vim/pc/gvim72.exe。(b)vimcdoc-1.7.0-setup.exe 地址http://prdownloads.sourceforge.net/vimcdoc/vimcdoc-1.7.0-setup.exe?download(c)ec57w32.zip 地址http://转载 2013-05-10 09:41:02 · 876 阅读 · 0 评论 -
vim配置及插件安装管理(超级详细)
1写在前面 Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, "工欲善其事, 必先利其器"嘛, 我想如果有一个很好用的IDE, 那些Linux牛人也会欢迎的. 这都是劳动人民的美好愿望罢了转载 2013-05-10 09:39:07 · 783 阅读 · 0 评论 -
c/c++ ctags cscope
c/c++ ctags cscope 支持c++,第一种ctags + ctags第二种ctags1:$ find . -name "*.h" -o -name "*.c" -o -name "*.cc" –o –name "*.cpp" > cscope.files(find后的路径最好为绝对路径,eg: find ~/project ****, 或eg: f原创 2011-01-10 04:26:00 · 2128 阅读 · 0 评论 -
总结了解决multiple definition of的方法
总结了解决multiple definition of的方法:问题原因: 当多个文件包含同一个头文件时,并且你的.H里面没有加上条件编译#ifndef TEST_H#define TEST_H#endif就会独立的解释,然后生成每个文件生成独立的标示转载 2011-10-16 23:17:32 · 6157 阅读 · 0 评论 -
linux cksum命令参数及用法详解---检查文件的CRC是否正确
语法:cksum [--help|--version] [file..]说明: cksum命令是确保文件从一个系统传输到另一个系统地过程中没有被损坏。这个测试要求校验和在源系统中被计算出来,在目的系统中又被计算一次,两个数字比较,如果校验和相等,则该文件被认转载 2011-08-31 00:08:59 · 4892 阅读 · 0 评论 -
Linux 定时器setitimer()
Linux 定时器setitimer() 用法:#include int getitimer(int which, struct itimerval *value);int setitimer(int which, const struct itimer转载 2011-08-11 22:12:50 · 588 阅读 · 0 评论 -
SQLite入门与分析(一)
写在前面:出于项目的需要,最近打算对SQLite的内核进行一个完整的剖析,在此希望和对SQLite有兴趣的一起交流。我知道,这是一个漫长的过程,就像曾经去读Linux内核一样,这个过程也将是辛苦的,但我相信结果一定是美好的... ...接下来是第一章。 1、SQLit转载 2011-08-07 17:12:57 · 512 阅读 · 0 评论 -
SQLite入门与分析(二)---设计与概念
作者:tamsyn http://www.sqlite.com.cn/MySqlite/4/535.Html 写在前面:谢谢各位的关注,没想到会有这么多人关注。高兴的同时,也感到压力,因为我接触SQLite也就几天,也没在实际开发中用过,只是最近项目的需求才来研究它,所转载 2011-08-07 17:16:24 · 543 阅读 · 0 评论 -
vim插件安装
注:以下资源来源于网络搜集1.ctags(1)到http://ctags.sourceforge.net/下载ctags源码ctags-5.6.tar.gzhttp://prdownloads.sourceforge.net/ctags/ctags-5.6.tar.gz(2)解压并安装tar zxvf ctags-5.6.tar.gzcd ctags-5.6./co转载 2013-05-10 09:42:54 · 837 阅读 · 0 评论 -
Qt中常用的类
QChar 表示一个字符的类,包含于QtCore判断:bool isDigit() const;//判断是否是十进制数字('0'-'9')bool isLetter() const;//判断是否是字母bool isNumber() const;//判断是否是数字,包括正负号,小数点等bool isLetterOrNumber() const;//判断力转载 2016-03-10 15:54:25 · 583 阅读 · 0 评论 -
POSIX-Data Structure
http://www.cnblogs.com/LubinLew/p/POSIX-DataStructure.htmlstruct sigeventThe header shall define the sigevent structure, which shall include at least the following members:str转载 2016-07-16 14:29:20 · 509 阅读 · 0 评论 -
Linux路由设置
一:使用 route 命令添加使用route 命令添加的路由,机器重启或者网卡重启后路由就失效了,方法://添加到主机的路由# route add –host 192.168.1.11 dev eth0# route add –host 192.168.1.12 gw 192.168.1.1//添加到网络的路由# route add –net 192.168.1.11 n转载 2016-03-27 22:57:35 · 462 阅读 · 0 评论 -
如何理解ip路由和操作linux的路由表
在ip选路中,我们知道路由表起着比较大的作用,它决定的ip包到底会怎么走。关于ip选路的问题,记得大学时候和舍友们曾经有过激烈讨论和验证,如今还略有印象,真是怀念当时伟大的623宿舍做实验时的生活啊,这么快就一年了。说正事吧: 路由其实就是选择一条数据包传输路径的过程,也就是说主机怎么向它的目的地顺利发送数据的过程。当TCP/IP主机发送IP数据包时,便出现了路由,且当到达IP路由器转载 2016-03-27 22:56:32 · 531 阅读 · 0 评论 -
linux用户管理(1)----创建用户(adduser和useradd)和删除用户(userdel)
http://www.2cto.com/os/201412/357346.html一、常用命令:(1)创建用户命令两条:adduseruseradd(2)用户删除命令:userdel二、两个用户创建命令之间的区别adduser: 会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。userad转载 2016-03-25 02:16:20 · 6294 阅读 · 0 评论 -
linux cscope 使用方法
3456#!/bin/bashcurrentPath=$(pwd | sed 's$\/$\\\/$g')echo $currentPathfind . -name "*.h"-o -name "*.c"-o -name "*.cc"-o -name "*.cpp"| sed "s/^\./$currentPath转载 2016-03-25 01:45:29 · 659 阅读 · 0 评论 -
Qt中图像的显示与基本操作
http://www.cnblogs.com/Romi/archive/2012/03/14/2396533.htmlQt可显示基本的图像类型,利用QImage、QPxmap类可以实现图像的显示,并且利用类中的方法可以实现图像的基本操作(缩放、旋转)。1. Qt可显示的图像类型参考Qt的帮助文档,可支持的类型,即可以直接读取并显示的格式有BMP、GIF、JPG、转载 2016-03-24 00:10:55 · 859 阅读 · 0 评论 -
Qt的主要类
这些是最常用的Qt类。如果想看一个完整的列表(包括XML、网络和容器类),请参考Qt的类。AQAction QFileDialog QMessageBox QSlider QToolBar QApplication QFont QMovie QSound QToolButtonB转载 2016-03-10 15:57:02 · 441 阅读 · 0 评论 -
QT中一些常用的类 2
这篇文章主要是介绍Qt 当中经常使用的类, 采取的是使用字母索引的方式, 下面的类是被经常使用的。 QDataStream 为QIODevice提供了一串的二进制的数据QDataWidgetMapper 提供了从数据模型到部件的映射QData 日期的功能QDateEdit 提供了日期的部件用来编辑日期,是基于QDateTimeEdit 部件QDateTime 提供日转载 2016-03-10 15:55:54 · 309 阅读 · 0 评论 -
Configure,Makefile.am, Makefile.in, Makefile文件之间 (ZT)
1.autoscan (autoconf): 扫描源代码以搜寻普通的可移植性问题,比如检查编译器,库,头文件等,生成文件configure.scan,它是configure.ac的一个雏形。 your source files --> [autoscan*] --> [转载 2011-08-06 15:16:54 · 848 阅读 · 0 评论 -
mplayer源码分析(zt)
原文地址:mplayer源码分析(一)作者:青草梦想2 我们原来的播放软件,用了mplayer中的库,但是是通过了多次的转接。十分的复杂。于是决定直接去看mplayer的代码。mplayer代码库下有很多libxxx的目录,是各个解码器针对某一种格式的代码转载 2011-08-07 16:51:05 · 980 阅读 · 0 评论 -
Mplay 常用命令及功能简介(ZT)
http://sujing2857.blog.163.com/blog/static/74485462010810111058979/1,录音:mplayer mms://202.***.***.***/test.asf -dumpstream转载 2011-08-06 15:13:54 · 1551 阅读 · 0 评论 -
C字符串数组初始化为空串
<br />在C语言编程中,当我们声明一个字符串数组的时候,常常需要把它初始化为空串。总结起来有以下三种方式:<br />(1) char str[10]="";<br />(2) char str[10]={'/0'};<br />(3) char str[10]; str[0]='/0';<br />第(1)(2)种方式是将str数组的所有元素都初始化为'/0',而第(3)种方式是只将str数组的第一个元素初始化为'/0'。如果数组的size非常大,那么前两种方式将会造成很大的开销。所以,除非必要(即我转载 2011-04-24 11:17:00 · 5415 阅读 · 0 评论 -
Mplayer播放器在命令行下的列表制作和思路
把某个$HOME/music下的歌,都制作成一个播放列表,怎么做?还有就是一旦我有了播放列表,怎么随意添加 或删除其中的一些歌?$ ls $HOME/music > music.lst添加echo music.mp3 >> music.lst删除用编译器打开music.lst删除你想删除的播放$ mplayer -playlist music.lst 附加信息:linux 下mplayer播放列表制作的一个方法在终端如果输入 mplayer xxx.mp3 就会播放了,输入 mplayer /.../* 就原创 2011-04-25 17:33:00 · 2998 阅读 · 1 评论 -
C语言指针注意事项
<br />转自:http://hi.baidu.com/deep%5Fpro/blog/category/c%D7%A8%BC%D2%BB%FD%C0%DB<br />在这里表示---------大爱!!!!<br />我自认还算对c有点自信,没想到今天看到这点很是惊讶,今天如若不发现,难保以后不贻害无穷。<br />首先看程序<br />char *foo_err(int num)<br />{<br />char p[20]="tset string/n";<br />return &p;<br />转载 2011-05-09 18:09:00 · 973 阅读 · 0 评论 -
wget 使用指南
<br />wget是一个从网络上自动下载文件的自由工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理. <br /><br />所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成,相对于其它大部分浏览器在下载大量数据时需要用户一直的参与,这省去了极大的麻烦。 <br /><br />wget可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。转载 2011-03-17 18:02:00 · 463 阅读 · 0 评论 -
ASCII码对照表
<br /><br /> <br />八进制十六进制十进制字符八进制十六进制十进制字符00000nul1004064@01011soh1014165A02022stx1024266B03033etx1034367C04044eot1044468D05055enq1054569E06066ack1064670F07077bel1074771G10088bs1104872H11099ht1114973I120a10nl1124a74J130b11vt1134b75K140c12ff1144c76L150d13e原创 2011-02-05 16:04:00 · 2733 阅读 · 0 评论 -
c/c++ ctags cscope
c/c++ ctags cscope支持c++, 第一种ctags + ctags 第二种ctags1:$ find . -name "*.h" -o -name "*.c" -o -name "*.cc" –o –name "*.cpp" > cscope.files(find 后的路径最好为绝对路径,eg: find ~/project ****, 因若在生成cscope.out的子目录下用vim打开原文件并添加数据库cs add ../cscope.out后,末行命令cs find s *** 可能由原创 2011-01-10 04:28:00 · 1336 阅读 · 0 评论 -
vi+ctags阅读源码
<br />linux下阅读源码的利器:vi+ctags<br /> <br /><br /><br />生成tags文件、配置vi<br />-------------------------------------------<br />(1)进入源码所在目录:<br /># cd /usr/src/linux<br />(2)生成针对源码的tags,因为ctags确省不把函数声明作为tag所以要加--c-types=+px(见注1)<br /># ctags -R --c-types=+px<br /转载 2010-08-29 13:35:00 · 490 阅读 · 0 评论 -
Vim+cscope+ctags+tags阅读源代码
一,软件安装<br />先安装cscope: sudo apt-get install cscope<br />在安装ctags:<br />http://ctags.sourceforge.net/<br /><br />可以使用:ctags –version来查看当前ctags的版本是否是emacs的。<br />要是安装了emacs的话就必须使用上面这个地址的ctags,vim不支持emacs的ctags,所以要下载安装这个ctags,下载之后在源文件所在目录运行: helight@helight转载 2010-08-29 13:30:00 · 1469 阅读 · 0 评论 -
linux共享库_soname_realname
Linux下的共享库类似windows下的dll,共命令约定如下:静态库一般由字母 lib 开头,并有 .a 的扩展名,而共享对象有两个不同的名称:soname 和 real name。soname 包含前缀 "lib",然后紧跟库名,其次是 ".so"(后面紧跟另一个圆点),以及表明主版本号的数字。soname 可以由前缀的路径信息来限定。real name 是包含库的已编译代码的真转载 2011-06-19 14:10:00 · 2821 阅读 · 0 评论 -
strsep函数用法
<br />strsep(),作为strtok的升级版,是一个很有用的字符串处理函数, 但是也有很多不方便的地方, 使用时需特别小心, 好在注意的事项都在 man strsep 里面有。如下:<br />#include <string.h><br /> char *strsep(char **stringp, const char *delim);<br />Be cautious when using this function. If you do use it, note that:<转载 2011-05-03 12:40:00 · 980 阅读 · 0 评论 -
转帖(Mplayer 分析 FBDEV)
http://hi.baidu.com/zhang_xuming/blog/item/83799c0ae24f041595ca6b3d.html(原文地址) 注:本文只关注FBDEV相关的内容,其他的或不提,或略过。[由于时间比较紧,许多地方肯定还有不足的地方,欢迎指教]转载 2011-08-06 15:10:12 · 2060 阅读 · 0 评论 -
mplayer-2.3节:视频输出设备
2.3.1 视频输出设备2.3.1.1 MTRR的设置强烈建议你检查你的MTRR注册是否正确的设定了,因为他们能极大的提高性能。运行'cat /proc/mtrr':--($:~)-- cat /proc/mtrrreg00: base=0xe4000000转载 2011-08-06 15:07:57 · 2632 阅读 · 0 评论 -
SQLite入门与分析(三)---内核概述(1)
作者:tamsyn http://www.sqlite.com.cn/MySqlite/4/540.Html写在前面:从本章开始,我们开始进入SQLite的内核。为了能更好的理解SQLite,我先从总的结构上讨论一下内核,从全局把握SQLite很重要。SQLite的内核实转载 2011-08-07 17:40:16 · 498 阅读 · 0 评论 -
详细讲解 关于Linux静态库和动态库的分析
本文转自:http://blog.chinaunix.net/space.php?uid=676646&do=blog&cuid=337019基本概念 库有动态与静态两种,动态通常用.so为后缀,静态用.a为后缀。 例如:libhello.so libhello.a 为了在同一系转载 2011-07-24 11:09:34 · 442 阅读 · 0 评论 -
两篇很牛的vim使用技巧(1)
读本文之前请注意: 1. 本文的目标是提供一些vim的使用技巧,利用这些技巧可以提高vim的操作效率。部分技巧在vi上也可以使用,但是现在基本上都是用vim了。 2. 本文是整理和总结使用技巧,而非讲解vim入门,因此不会涉及最基本的使用,例如如何上移或下移光标,对此类操作请参阅转载 2011-07-09 22:44:37 · 546 阅读 · 0 评论 -
嵌入式linux busybox ntp时间同步
转自:http://hi.baidu.com/uc100200/blog/item/cccef6b517b512de37d3ca02.html一、背景机器装的是busybox,使用的是最小集合的linux。硬件时钟是本地时间,而内核时钟是UTC时间,没有设置时区,也没有任何时区设置的选项。二、需求这台机器需要定时进行NTP时间同步。同步之后显示给用户的是本地时间。三、过程1.时区的支持(1)hwclock为了查看硬件时钟是否为本地时间,运行命令hwclock –r。结果系统提示:“Could not ope转载 2011-05-09 18:39:00 · 9350 阅读 · 0 评论 -
如何提高程序设计能力
如何提高程序设计能力看到一篇感觉对大家有帮助的文章,是一个有几年编程经验的老员工说的,应该是对大家有启发的,就转载过来了:<br /> <br /> 1. 扎实的基础<br /> 2. 丰富的想象力<br /> 3. 最简单的是最好的<br /> 4. 不钻牛角尖<br /> 5. 对答案的渴求<br /> 6. 多与别人交流<br /> 7. 良好的编程风格<br /> 8. 韧性和毅力<br /><br />不知不觉做软件已经做了十年,有成功的喜悦,也有失败的痛苦,但总不敢称自转载 2011-05-07 19:26:00 · 4327 阅读 · 0 评论 -
详细讲解 关于Linux静态库和动态库的分析
<br />基本概念 库有动态与静态两种,动态通常用.so为后缀,静态用.a为后缀。 例如:libhello.so libhello.a 为了在同一系统中使用不同版本的库,可以在库文件名后加上版本号为后缀,例如: libhello.so.1.0,由于程序连接默认以.so为文件后缀名。所以为了使用这些库,通常使用建立符号连接的方式。 ln -s libhello.so.1.0 libhello.so.1 ln -s libhello.so.1 libhello.so 1、使用库 当要使用静态的程序库时,连接器转载 2011-05-05 17:17:00 · 452 阅读 · 0 评论