部分liunx下字符串操作函数(转载)
bcmp(比较内存内容) 相关函数 bcmp,strcasecmp,strcmp,strcoll,strncmp,strncasecmp 表头文件 #include<string.h> 定义函数 int bcmp ( const void *s1,const void * s2,int n); 函数说明 bcmp()用来比较s1和s2所指的内存区间前n个字节,若参数n为0,则返回0。 返回值 若参数s1 和s2 所指的内存内容都完全相同则返回0 值,否则返回非零值。 附加说明 建议使用memcmp()取代。 范例 参考memcmp()。 bcopy(拷贝内存内容) 相关函数 memccpy,memcpy,memmove,strcpy,ctrncpy 表头文件 #include <string.
C 语言中的指针和内存泄漏 (转载)
作者:Manish Virmani 来自:IBM DW中国在使用 C 语言时,您是否对花时间调试指针和内存泄漏问题感到厌倦?如果是这样,那么本文就适合您。您将了解可能导致内存破坏的指针操作类型,您还将研究一些场景,了解要在使用动态内存分配时考虑什么问题。引言对于任何使用 C 语言的人,如果问他们 C 语言的最大烦恼是什么,其中许多人可能会回答说是指针和内存泄漏。这些的确是消耗了开发人员大多数调试时间的事项。指针和内存泄漏对某些开发人员来说似乎令人畏惧,但是一旦您了解了指针及其关联内存操作的基础,它们就是您在 C 语言中拥有的最
big_endian和little_endian的说明(转载)
big_endian 、little_endian 用于自动改变二进制位存放顺序 Big Endian and Little Endian 谈到字节序的问题,必然牵涉到两大CPU派系。那就是Motorola的PowerPC系列CPU和Intel的x86系列CPU。PowerPC系列采用big endian方式存储数据,而x86系列则采用little endian方式存储数据。那么究竟什么是big endian,什么又是little endian呢? 其实big endian是指低地址存放最高有效字节(MSB),而little endian则是低地址存放最低有效字节(LSB)。 用文字说明可能比较抽象,下面用图像加以说明。比如数字0x12345678在两种不同字节
获得某个目录下的所有目录以及子目录
#!/usr/bin/shcd $1function getPath{for file in *doif test -d $file ; thencd $fileecho "mkdir " `pwd` >> ./create_path.shgetPathcd ..fidone} echo "now is getting dirctory structure! ......"getPath[@more@]
指定目录解压
在解压缩某个存档文件时,使用 -C 选项来指定要在其中解压缩该文件的目录:tar xvf -C tmp/a/b/c newarc.tar.gz [@more@]
可以这样建目录
mkdir -p ./gwd/project/{lib/ext,bin,src,doc/{html,info,pdf},demo/stat/a}[@more@]
split相当好使
用Split命令可以实现文件的分割,使用 cat 命令来完成分割文件的合并。 譬如,在下面 split 命令行中的 “800m” 表示分割后的每个文件为 800MB,“filename” 为待分割文件,分割后的文件自动命名为 xaa,xab,… split -b 800m GPSS.rcdcat 命令可将这些分割后的文件合并为一个文件,并重定向到“largefile”文件中(largefile为自定的文件名)。 $ cat x* > largeflie[@more@]
模拟一个大文件
今天突然想模拟一个大的文件一时没想到好的方法,就写了个循环,谁知道好的方法告诉我下#!/bin/shi=1sk=0while [ $i -le $1 ]do#echo $iecho "aaa,bbb,aaa" >> $2i=`expr $i + 1` sk=`du -sk`sk=`echo "scale=2;$sk/1024"|bc`if [ $sk -ge 200 ] ; then echo "文件大于200M" echo "总共循环了""$i""次" exitfidone [@more@]
转载——C++内存管理
1、内存分配方式 内存分配方式有三种: (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 (3) 从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期
loadrunner 参数英汉对照
LR函数:lr_start_transaction 为性能分析标记事务的开始lr_end_transaction 为性能分析标记事务的结束lr_rendezvous 在 Vuser 脚本中设置集合点lr_think_time 暂停 Vuser 脚本中命令之间的执行 lr_end_sub_transaction 标记子事务的结束以便进行性能分析lr_end_transaction 标记 LoadRunner 事务的结束Lr_end_transaction("trans1",Lr_auto);lr_end_transaction_instance 标记事务实例的结束以便进行性能分析lr_fail_trans_with_error 将打开事务的状态设置为 LR_FAIL 并发送错误消息lr_get_trans_instance_duration 获取事
LR中性能数据
LR中性能数据(转载) Transactions(用户事务分析) 用户事务分析是站在用户角度进行的基础性能分析。 1、Transation Sunmmary(事务综述) 对事务进行综合分析是性能分析的第一步,通过分析测试时间内用户事务的成功与失败情况,可以直接判断出系统是否运行正常。 2、Average Transaciton Response Time(事务平均响应时间) “事务平均响应时间”显示的是测试场景运行期间的每一秒内事务执行所用的平均时间,通过它可以分析测试场景运行期间应用系统的性能走向。 例:随着测试时间的
Linux的load average的含义
在Linux系统中,uptime、w、top等命令都会有系统平均负载load average的输出,那么什么是系统平均负载呢? 系统平均负载被定义为在特定时间间隔内运行队列中的平均进程树。如果一个进程满足以下条件则其就会位于运行队列中: - 它没有在等待I/O操作的结果 - 它没有主动进入等待状态(也就是没有调用'wait') - 没有被停止(例如:等待终止) 例如: uptime 7:51pm up 2 days, 5:43, 2 users, load average: 8.13, 5.90, 4.94 命令输出的最后内容表示在过去的1、5、15分钟内运行队列中的平均进程数量。 一般来说只要
什么是here document
一个here document是以<<开头的,后面所跟的是要在文档的结尾处重复出现的字符序列.<<是Shell的重定向标签,在这样的情 况下,他会强制将命令输入给here document.这个特殊的序列的作用就像是一个标记,来告诉Shell here document要在哪里结束.这个标记充列不可以出现在要传递给命令的行上,所以最好是将他们标记为最不常用的或是难以忘记的内容.如下面的这个例子:#!/bin/shcat <<gwdhelloI am bigstone!documentgwd而这个脚本的输出如下:hello I am bigstone!document[@more@]
什么是回车&换行
在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33),每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。 于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。 这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。 后来,
随笔
注册博客快一个礼拜了,竟然连一点点东西都没有写最近是比较郁闷,临过年了有点忙。老是想把自己手头的活干完,但是干完了发现还有别的活等着你。虽然比起在外包的时候劳动强度和工作压力好多了,但感觉自己变懒了,上进心也不如以前了。2008年了,一晃工作两年多了,毕业感觉好像就在眼前。两年中发生了好多事情,工作换了好几个,从开始坐网站,售前,民办学校的老师,然后进外包公司,到现在的公司。感谢我的兄弟,在我最困难的时候在经济和生活上给与我无私的帮助,也感谢我现在的女友,虽然经常斗抖嘴,但是始终死心他地的跟着我。自