自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ken_chiu的专栏

All is well ~ fighting ziyuewuneng

  • 博客(52)
  • 资源 (6)
  • 收藏
  • 关注

转载 vim查找/替换字符串

vim查找/替换字符串vi/vim 中可以使用 :s 命令来替换字符串。该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询。     :s/vivian/sky/ 替换当前行第一个 vivian 为 sky     :s/vivian/sky/g 替换当前行所有 vivian 为 sky     :n,$s/vivian/sk

2014-01-05 13:53:51 931

转载 Linux makefile 教程 非常详细,且易懂

Linux makefile 教程 非常详细,且易懂            最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。            于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。           后记,看完发现这篇文章和《Linux环境下的C

2013-12-22 20:40:26 890

转载 const使用方法探讨

const使用方法探讨关于C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,现将本人的一些体会总结如下,期望对大家有所帮助:一 const基础如果const关键字不涉及到指针,我们很好理解,下面是涉及到指针的情况:int b = 500;const int* a = &b; [1]int const *a = &b; [2]

2013-12-22 15:19:01 790

转载 字节序问题--大端法小端法

字节序问题--大端法小端法分类: ARM 2011-12-29 21:21 4897人阅读 评论(4)收藏 举报byte网络平台freebsdfp存储一、字节序定义字节序,顾名思义字节的顺序,再多说两句就是大于一个字节类型的数据在内存中的存放顺序(一个字节的数据当然就无需谈顺序的问题了)。其实大部分人在实际的开发中都很少会直接和字节序打交

2013-12-19 21:06:40 1946

转载 为什么硬链接不能指向目录

linux系统中的硬连接有两个限制:不能跨越文件系统和不允许普通用户对目录作硬连接。至于第一个限制,很好理解,而第二个就不那么好理解了。 我们对任何一个目录用ls -l 命令都可以看到其连接数至少是2,这也说明了系统中是存在硬连接的,而且命令ln -d 也可以让超级用户对目录作硬连接,这些都说明了系统限制对目录进行硬连接只是一个硬性规定,并不是逻辑上不允许或技术上的不可行。那么操作系统为什么要进行

2013-11-29 08:08:24 1437

转载 排序算法的时间复杂度和空间复杂度

常用的内部排序方法有:交换排序(冒泡排序、快速排序)、选择排序(简单选择排序、堆排序)、插入排序(直接插入排序、希尔排序)、归并排序、基数排序(一关键字、多关键字)。一、冒泡排序:   1.基本思想:两两比较待排序数据元素的大小,发现两个数据元素的次序相反时即进行交换,直到没有反序的数据元素为止。2.排序过程:设想被排序的数组R[1..N]垂直竖立,将每个数据元素看作有重量的气

2013-10-20 19:37:31 684

转载 常用的排序算法的时间复杂度和空间复杂度

常用的排序算法的时间复杂度和空间复杂度常用的排序算法的时间复杂度和空间复杂度排序法 最差时间分析平均时间复杂度 稳定度 空间复杂度 冒泡排序O(n2)O(n2)稳定 O(1) 快速排序O(n2)O(n*log2n)不稳定 O(log2n)~O(n)

2013-10-20 19:35:19 862

转载 strstr strlen strcpy函数实现

strstr strlen strcpy函数实现分类: c++语言2013-06-17 13:54 59人阅读 评论(0) 收藏 举报strcpy函数实现strcpy 看似是标准函数库里面最简单的函数了,谁都可以实现这个函数,  但是,并不一定谁都能实现的很好。林锐博士面试微软的时候,就做这个题目。  他也没有把这个题目完全的做对。建议你自己先动手写一个自己

2013-10-20 18:25:44 799

转载 C字符串处理函数的实现

C字符串处理函数的实现C字符串处理函数的实现(Linux)#include  char * ___strtok = NULL;  char * strcpy(char * dest,const char *src) {         char *tmp = dest;          while ((*dest++ = *src+

2013-10-20 18:08:11 819

转载 局部变量,静态局部变量,全局变量,静态全局变量在内存中的存放区别

我们先来看内存中的几大区:  内存到底分几个区?下面有几种网上的理解,我整理一下:一: 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由os回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局

2013-10-20 15:58:52 1932

转载 对内存中堆、栈、静态存储区的理解

堆:由程序员自己分配释放(用malloc和free,或new和delete) ,如果我们不手动释放,那就要到程序结束才释放。如果对分配的空间在不用的时候不释放而一味的分配,那么可能会引起内存泄漏,其容量取决于虚拟内存,较大。  栈:由编译器自动分配释放,其中存放在主调函数中被调函数的下一句代码、函数参数和局部变量,容量有限,较小。  静态存储区:由在编译时由编译器分配,由系统释放,其中存放

2013-10-20 15:57:59 2403

转载 内存空间分几部分:代码段、数据段,栈,堆 (收集整理)

1.函数代码存放在代码段。声明的类如果从未使用,则在编译时,会优化掉,其成员函数不占代码段空间。全局变量或静态变量,放在数据段,局部变量放在栈中,用new产生的对象放在堆中,内存分为4段,栈区,堆区,代码区,全局变量区BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域。BSS是英文Block Started by

2013-10-20 15:56:53 1068

转载 递归与循环的优缺点

递归的话函数调用是有开销的,而且递归的次数受堆栈大小的限制。 以二叉树搜索为例: bool search(btree* p, int v) { if (null == p) return false; if (v == p->v) return true else { if (v v) return search(p->left, v

2013-10-19 17:53:22 7792

转载 从头到尾彻底解析Hash表算法

从头到尾彻底解析Hash表算法发布时间: 2013-10-02 10:26  阅读: 2833 次  推荐: 3   原文链接   [收藏]    作者:July、wuliming、pkuoliver  说明:本文分为三部分内容, 第一部分为一道百度面试题Top K算法的详解;第二部分为关于Hash表算法的详细阐述;第三部分为打造一个最快的Hash表算法。 

2013-10-10 17:50:43 934

转载 Socket网络编程常用的结构及函数小结

Socket网络编程常用的结构及函数小结  IP地址的作用是标示计算机的网卡地址,每台计算机都有一个IP地址;端口,是指计算机中为了标示在计算机中访问网络的不同程序而设的编号,并不是网卡接线的端口,而是不同程序的逻辑编号,并不是实际存在的;域名,是用来代替IP地址来标示计算机的一种直观名称,例如百度网站的IP地址是202.108.22.43,这个IP地址没有任何逻辑含义,不便记

2013-10-10 17:42:29 712

转载 Linux下ps命令详解

Linux下ps命令详解 Linux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待)2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)5. 停止(进程收到SIGSTOP

2013-09-25 08:15:02 804

转载 malloc和new的区别

malloc和new的区别      malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。      对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译

2013-09-24 13:25:45 589

转载 软件开发过程包括哪几个阶段

软件开发过程包括哪几个阶段Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。 IEEE:软件工程是开发、运行、维护和修复软件的系统方法。 Fritz Bauer:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 软件工程学的内容 软件工程学的主要内容

2013-09-23 22:53:41 12585

转载 C语言实现strlen函数的几种方法

C语言实现strlen函数的几种方法 今天偶然看到了一个实现strlen函数的方法,也实际练习了一下,挺有意义的,其实现的一些思想值得学习,记录一下吧。我这里除了写两个比较巧妙的递归实现之外,也写了另外一种常规的方式。       传说常见的一个笔试题:不使用中间变量求const字符串长度,即实现求字符串长度库函数strlen函数。函数接口声明如下:int strl

2013-09-23 22:35:32 2117

转载 ASCLL码转换——十进制(Dec)十六进制(Hex)字符(Char)密码转换(zt)

ASCLL码转换——十进制(Dec)十六进制(Hex)字符(Char)密码转换(zt)ASCII是英文American Standard Code for Information Interchange的缩写。ASCII码是目前计算机最通用的编码标准。因为计算机只能接受数字信息,ASCII码将字符作为数字来表示,以便计算机能够接受和处理。比如大写字母M的ASCII码

2013-09-23 21:05:29 7592

转载 sscanf,sscanf_s及其相关用法

sscanf,sscanf_s及其相关用法#include 定义函数 int sscanf (const char *str,const char * format,........);函数说明  sscanf()会将参数str的字符串根据参数format字符串来转换并格式化数据。格式转换形式请参考scanf()。转换后的结果存于对应的参数内。返

2013-09-23 20:16:44 1394

转载 linux下用gcc编译使用了math库函数的程序出错的解决方法

linux下用gcc编译使用了math库函数的程序出错的解决方法症状:在c程序中用到math库函数时,编译成obj后,再生成执行文件时,会遇到类似下面的错误:/tmp/ccalvMPY.o: In function `main':/tmp/ccalvMPY.o(.text+0x40): undefined reference to `pow'原因:因为l

2013-09-23 18:45:53 1724

转载 分析一个互联网产品的思路

在网上看到这段文字觉得启发性很大,特意转载过来激励一下自我!希望看到这篇文章的产品前辈指导一下……作为产品的方便面解决了什么用户的什么需求?方便面解决了宅男快速填饱肚子的需求。产生需求的场合是什么?某天半夜,玩网游,刚和队友杀掉一个终极大Boss,忽然感到饿了,需要吃点东西。产品的主要功能有哪些?撕开袋子,用开水泡3min,达到能吃的状态。技术基础是

2013-09-18 07:56:02 873

转载 kill用法详细解释(特别是信号量9的使用以及理解)

kill用法详细解释(特别是信号量9的使用以及理解)Linux kill命令当需要中断一个前台进程的时候,通常是使用组合键;但是对于一个后台进程恐怕就不是一个组合键所能解决的了,这时就必须求助于kill命令。该命令可以终止后台进程。至于终止后台进程的原因很多,或许是该进程占用的CPU时间过多;或许是该进程已经挂死。总之这种情况是经常发生的。Linux进程中的kill命令是通过向进程

2013-09-18 07:44:10 1449

转载 typedef用法总结之续

typedef用法总结之续        刚刚看了一篇也是关于typedef用法的文章,跟先前看的那篇文章内容大同小异,不过有一处让我收获不小,就是在上篇最后那个案例我不理解的地方,这篇文章给了一个很好的答案。以下是文章的部分内容 : 陷阱一:         记住,typedef是定义了一种类型的新别名,不同于宏,它不是简单的字符串替换。比如: 先定义: typedef 

2013-09-17 22:18:26 626

转载 关于typedef的用法总结

关于typedef的用法总结    不管实在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中。typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的总结还是很不错,由于总结的很好,我就不加修改的引用过来了,以下是引用的内容(红色部分是我自己写的

2013-09-17 22:17:16 762

转载 常见gcc编译警告整理

1、warning: no newline at end of file在文件最后一行加上回车键解释:在《Rationale for the C99 standard》一文中,有C99的相关信息:A backslash immediately before a newline has long been used to continue string literals, as well

2013-09-17 22:00:33 1563

转载 最快线程间数据交换算法,有效避免锁竞争 -- TwoQueues

最快线程间数据交换算法,有效避免锁竞争 -- TwoQueueshan z. 于 星期四, 21/03/2013 - 04:34 提交分类:开源优化安全线程C/C++服务器服务器开发人员处理多线程数据共享问题注意的几个要点:1、锁竞争:尽量减少锁竞争的时间和次数。2、内存:尽量是使用已分配内存,

2013-09-17 16:29:30 899

转载 sprintf,你知道多少?

sprintf,你知道多少?2005-04-07 14:4623056人阅读 评论(9)收藏 举报扩展编译器mfcbyte语言笑话选自《CSDN 社区电子杂志——C/C++杂志》http://emag.csdn.net 2005 年1 月 总第1 期 - 93 -本文作者:steedhorse(晨星)printf 可能是许多程序员在开始学习C 语

2013-09-17 12:08:21 812

转载 父进程等待子进程终止 wait, WIFEXITED, WEXITSTATUS

很多内容转自link这篇文章linkwait()的函数原型是:#include  #include pid_t wait(int *status)进程一旦调用了wait,就立即阻塞自己,由wait自动分析是否当前进程的某个子进程已经退出。如果让它找到了这样一个已经变成僵尸的子进程,wait就会收集这个子进程的信息,并把它彻底销毁后返回;如果没有找到这样一个子

2013-09-16 23:50:06 818

转载 system函数,WIFEXITED和WEXITSTATUS

1,在程序中,用exit来设置进程的退出值时,虽然该函数的参数类型为int型,但再父进程中只能取到其值的低8位.所以用exit返回值时,高于255的值是没有意义的.2,对于system函数,返回值是由两部分组成的,低8位值表示所执行的脚本在执行过程中所接收到的信号值,其余的位表示的脚本exit退出时所设置的值, 即脚本内exit退出是的值的低8位,在system返回值的低9-1

2013-09-16 23:45:22 5169

原创 linux环境下用QT实现打地鼠游戏源码共享

每一个qt程序都是一个文件夹!(即都必须创建一个目录)1 mkdir dir2 cd dir 创建文件    cc/cpp3 qmake -project     生成工程文件.pro4 qmake         生成makefile5 make6 默认生成与目录同名的可执行文件!7 ./执行,查看结果!游戏打地鼠:布局,button,信号与槽,计时,

2013-09-16 11:08:44 5721

转载 比特 字节 字

1、位(bit) 来自英文bit,音译为“比特”,表示二进制位。位是计算机内部数据储存的最小单位,11010100是一个8位二进制数。一个二进制位只可以表示0和1两种状态(21);两个二进制位可以表示00、01、10、11四种(22)状态;三位二进制数可表示八种状态(23)……。 2、字节(byte) 字节来自英文Byte,音译为“拜特”,习惯上用大写的“B”表示。 字节是计算机中数据处

2013-09-09 15:52:30 1642

转载 MP3文件格式解析

MP3文件格式解析Peter Lee 2008-06-05 目录一、概述二、整个MP3文件结构三、MP3帧格式1. 帧头格式2. MAIN_DATA四、ID3标准1. ID3V12. ID3V2五、MP3文件实例剖析六、资料 一、            概述MP3 文件是由帧(frame)构成的,帧是 MP3 文件最小的组成单位。

2013-09-09 14:43:13 2211

转载 linux下解决:cannot execute binary file

linux系统下遇到cannot execute binary file的问题,一般由以下情况造成:非root用户或者无执行权限编译环境不同(程序由其他操作环境复制过来)对于第一种情况,采用增加执行权限即可chmod +x program对于第二种情况,建议将该程序二进制包拷贝过来,重新编译程序。因为我在实际操作过程中发现我将美国的VPS的整个操作系统环境打包后下载到本地服务器上解

2013-09-09 10:11:12 203208 5

转载 函数fork与vfork的区别与联系详解

函数fork与vfork的区别与联系详解2009-06-16 15:50:21 分类: LINUX创建一个新进程的方法只有由某个已存在的进程调用fork()或vfork(),当然某些进程如init等是作为系统启动的一部风而被内核创建的。1.fork函数介绍#include #include pid_t fork (void );正确返回:

2013-08-22 23:00:40 805

转载 fork函数与vfork函数

fork函数与vfork函数来源:考试大   【考试大:你最值得信赖的考试顾问】  2010年12月13日  一、fork  1. 调用方法  #include   #include   pid_t fork(void);  正确返回:在父进程中返回子进程的进程号,在子进程中返回0  错误返回:-1  子进程是父进程的一个拷贝。即,子

2013-08-22 22:58:43 822

转载 qsort 快速排序法

sort(数组名,数组末地址,compare) //若不写compare则默认升序排列,需要#include例如:sort(a,a+10); //将数组a以升序排序,假设先前定义了a[10]并输入了数据 文章作者:姜南(Slyar) 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。qsort包含在头文件中,此

2013-08-22 22:52:52 1046

转载 linux fork函数知识整合

fork:n. 叉;餐叉;耙vt. 叉起;使成叉状vi. 分叉;分歧[cpp] view plaincopy#include   #include   /* 功能:复制进程 参数:无 返回值:  成功:  父进程:返回子进程id                 子进程:返回0          失败:  返回-1 */

2013-08-22 22:32:38 787

原创 apue 13章 创建守护程序

13章的过程: 1 文件的权限 = open参数3 &(~umask) umask防止权限过大0644= 06660022 要取消限制: umask(0);设置屏蔽字为02 fork : 结束父进程3 在孤儿进程中调用setsid(void);4 chdir("/")5 关闭已经打开的文件描述符6将0,1,2重定向到/de

2013-08-22 21:47:03 787

Noisex-92完整版.zip

很有用的噪声库,可进行语音信号处理的离线仿真测试等 File: Matlab or WAV formats (compressed) sampling rate: 19.98 KHz A/D: 16 bit pre-filter: anti-aliasing filter pre-emphasis: none filter: none duration: 235 sec length (uncompressed): approx 9 Mb (uncompressed) 白噪声:White noise White Noise acquired by sampling high-quality analog noise generator (Wandel & Goltermann). Exhibits equal energy per Hz. bandwidth. 车内噪声:volvo Volvo 340 noise acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). This recording was made at 120 km/h, in 4th gear, on an asphalt road, in rainy conditions. 军用车辆噪音:Military vehicle noise Leopard 2 noise acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). The Leopard 1 vehicle was moving at a speed of 70 km/h. The sound level during the recording process was 114 dBA. 坦克内部噪声:Tank noise M109 noise acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). The M109 tank was moving at a speed of 30 km/h. The sound level during the recording process was 100 dBA. 餐厅内嘈杂噪声:speech babble Voice Babble acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). The source of this babble is 100 people speaking in a canteen. The room radius is over two meters; therefore, individual voices are slightly audible. The sound level during the recording process was 88 dBA. 高频信道噪声:HF channel noise Recording of noise in an HF radio channel after demodulation 粉红噪声:pink noise Pink Noise acquired by sampling high-quality analog noise generator (Wandel & Goltermann). Exhibits equal energy per 1/3 octave. 机枪噪声:Machine gun noise Machine Gun noise acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). The weapon used was a .50 calibre gun fired repeatedly. 工厂车间噪音1:Factory floor noise 1 Factory noise acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). This noise was recorded near plate-cutting and electrical welding equipment. (板切割及电器设备焊接) 工厂车间噪音2:Factory floor noise 2 Factory noise acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). This noise was recorded in a car production hall. (汽车生产车间) F16座舱噪声:F-16 cockpit noise F-16 noise acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). The noise was recorded at the co-pilot's seat in a two-seat F-16, traveling at a speed of 500 knots, and an altitude of 300-600 feet. The sound level during the recording process was 103 dBA.It was found that the flight condition had only a minor effect on the noise. The reproduced noise can therefore be considered to be representative. 驱逐舰机舱噪声:Destroyer engine room noise Destroyer: Engine Room noise acquired by recording samples from microphone onto digital audio tape (DAT). The sound level during the recording process was 101 dBA. 驱逐舰作战室背景噪音:Destroyer operations room background noise Destroyer: Operations Room noise acquired by recording samples from microphone onto digital audio tape (DAT). The sound level during the recording process was 70 dBA. Buccaneer驾驶舱噪声1: cockpit noise;Buccaneer jet traveling at 190 knots; Buccaneer noise acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). The Buccaneer jet was moving at a speed of 190 knots, and an altitude of 1000 feet, with airbrakes out. The sound level during the recording process was 109 dBA. Buccaneer驾驶舱噪声2: cockpit noise;Buccaneer jet traveling at 450 knots; Buccaneer noise acquired by recording samples from 1/2" B&K condensor microphone onto digital audio tape (DAT). The Buccaneer was moving at a speed of 450 knots, and an altitude of 300 feet. The sound level during the recording process was 116 dBA.

2020-03-27

linux环境下用QT实现打地鼠游戏源码共享

游戏打地鼠:布局,button,信号与槽,计时,分数 当按下其中一个!另外一个弹起来! 禁用所有,随机启用一个! 增加新功能: 1,自动跳出! 周期(计时): QTimer: 2,计数! 显示数!QLabel/QLCDNumber 3,开始,暂停,重新开始,退出!

2013-09-16

GSM模块_短信收发设备_短信模块_工业手机

GSM模块_短信收发设备_短信模块_工业手机GSM模块_短信收发设备_短信模块_工业手机GSM模块_短信收发设备_短信模块_工业手机GSM模块_短信收发设备_短信模块_工业手机GSM模块_短信收发设备_短信模块_工业手机GSM模块_短信收发设备_短信模块_工业手机

2011-11-19

镍镉电池的使用方法

镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法镍镉电池的使用方法

2011-11-19

如何创建优秀的开关电源PCB版图设计

如何创建优秀的开关电源PCB版图设计

2011-11-19

空空如也

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

TA关注的人

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