自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(75)
  • 资源 (1)
  • 收藏
  • 关注

转载 Linux上程序运行一段时间后,段错误,bt得其调用栈,函数A调用的下层函数栈损坏

Linux上程序运行一段时间后,段错误,bt得其调用栈,函数A调用的下层函数栈损坏。我进入A函数栈桢,查看eip,ebp寄存器,结合汇编分析,各项值都正确,实在是没法了,还求各位大神指点一下? 这种栈被写坏的问题,一般是由哪些原因引起的呢? 1.线程栈空间太短,而内部局部变量有如大的数组将栈写穿?但这种原因我排查了,没有这情况。 还有其它什么原因呢,烦请各位神指点一下,多谢。

2012-12-31 14:28:51 522

转载 linux下的程序分析工具——gprof

gprof使用详细介绍 linux下c/c++编程 gprof介绍 gprof是GNU profiler工具。可以显示程序运行的“flatprofile”,包括每个函数的调用次数,每个函数消耗的处理器时间。也可以显示“调用图”,包括函数的调用关系,每个函数调用花费了多少时间。还可以显示“注释的源代码”,是程序源代码的一个复本,标记有程序中每行代码的执行次数。 基本用法: 1. 使用-p

2012-12-31 14:27:48 494

转载 C语言获取时间函数

C语言获取时间函数 C语言的标准库 函数包括一系列日期和时间处理函数,它们都在头文件中说明。下面列出了这些函数。在头文件中定义了三种类型:time_t,struct tm和clock_t。 在中说明的C语言时间函数 time_t time(time_t *timer); double difftime(time_t time1,time_t time2); s

2012-12-29 09:27:07 204

转载 C语言时间函数应用

C语言时间函数应用 摘要: 本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了阐述。本文还通过大量的实例向你展示了time.h头文件中声明的各种函数和数据结构的详细使用方法。 关键字: UTC(世界标准时间),Calendar Time(日历时间),epoch(时间点),clock tick(时钟计时单

2012-12-29 09:26:10 141

转载 [转载]哈佛,看一眼就会明白中国缺什么

原文地址:哈佛,看一眼就会明白中国缺什么作者:森林大地 哈佛,看一眼就会明白中国缺什么 (到了哈佛,你才知道真正的精英并不是天才,都是要付出更多努力的人。)     美国哈佛大学图书馆凌晨4点座无虚席 ——哈佛,看一眼就会明白中国缺什么 日前,两张美国哈佛大学图书馆凌晨4点多学生仍在学习的照片,在网上迅速传播。 照片显示:凌晨4点

2012-12-02 23:50:37 186

转载 应用gdb进行调试

下面是简单命令,另外网上可以找到 gdb quick reference .pdf看到更多命令列表 1. 启动     gdb 应用程序名     gdb 应用程序名 core文件名     gdb 应用程序名 pid                 gdb --args 应用程序名 应用程序的运行参数     帮助:     help    显示帮助     info

2012-12-02 23:19:31 153

转载 gdb常用(网上摘抄)常用 GDB 调试 命令(转载)

// 查看进程的线程 top -H -p PID // 将调试信息输出到文件 1 #(gdb) set logging file  2 #(gdb) set logging on 3 #(gdb) set height 0 4 #(gdb) thread apply all bt 5 #(gdb) set logging off thread apply all bt // 打

2012-12-02 22:59:04 340

转载 C语言中的位域、字节序、比特序、大小端 (2012-03-22 09:19)(转载)

C语言中的位域、字节序、比特序、大小端 (2012-03-22 09:19) 标签: 转载  原文地址:C语言中的位域、字节序、比特序、大小端 作者:digdeep126 1.比特序 / 位序 /  bit numbering / bit endianness 我们知道一个字节有8位,也就是8个比特位。从第0位到第7位共8位。比特序就是用来描述比特位在字节中的存放顺序的。

2012-12-02 20:39:35 431

转载 浅谈字节序

(Endianness) (2012-02-01 15:07) 标签: 转载  原文地址:浅谈字节序(Endianness) 作者:cbqcgq 一、字节序的起源 在计算机中,字节序(Endianness)是数据中单独的可取地址的亚型(words,bytes和bits)在外部存储器中存储的顺序。通常在提到四字(ddword)、双字(dword)和字(word)的时候需要考虑其实

2012-12-01 14:02:52 219

转载 Source Insight经典教程

原文地址:http://blog.21ic.com/user1/4251/archives/2008/53650.html Source Insight经典教程 Source Insight实质上是一个支持多种开发语言(java,c ,c 等等)的编辑器,只不过由于其查找、定位、彩色显示等功能的强大,常被我们当成源代码阅读工具使用。 作为一个开放源代码的操作系统,Linux附带的源代码库

2012-11-04 21:35:22 158

转载 source insight 常用设置与使用技巧

原文地址:http://tgmlyj.blog.163.com/blog/static/59415229200922802932554/ 常用设置: 1 sourceinsight screen font 的默认字体是Verdana的,它是一直变宽字体。在Document style中可以将字体改为定宽的Courier New 2   勾掉indent Open Brace和Indent

2012-11-04 10:54:23 182

转载 Debug和Release区别

原文地址:http://www.cnblogs.com/JemBai/archive/2009/01/13/1374805.html VC下Debug和Release区别 最近写代码过程中,发现 Debug 下运行正常,Release 下就会出现问题,百思不得其解,而Release 下又无法进行调试,于是只能采用printf方式逐步定位到问题所在处,才发现原来是给定的一个数组未初始化,导致

2012-10-31 21:49:35 254

转载 德文整理一(转载请见谅)

问题一: 如何快速比较两个字符串中字符完全相同? 有两个字符串,比如: $str1 = 'abcdef'; $str2 = 'efabcd'; 怎么快速比较两个字符串中字符完全相同呢,两个字符串的长度一样,只是字符排序不一样,有可能出现重复的字符。 能不能正则实现? 其实,这个完全可以用一个时间复杂度为O(n),空间复杂度为O(1)的算法来实现。这是百度的

2012-10-28 21:42:14 136

原创 ubuntu操作相关

1.设置ubuntu12.04默认启动字符界面 要想默认不进入xwindows,只需编辑文件”/etc/default/grub”,把GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”改成GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash text”(即在GRUB_CMDLINE_LINUX_DEFAULT项的后面加上” text

2012-10-27 21:36:07 267

原创 xen虚拟机资料的整理

使用brctl show来查看网桥。这里需要注意的是:vif0.0代表的是Dom0的网络接口,vifX.0代表的是DomU的网络接口。X和DomU的id有关系。。peth0是物理网卡接口。网桥如果可以通信,vif0.0,vifX.0,peth0必须在一个网桥之下。这里的网桥类似于xenbr0,virbr0的形式。注意这里是两个不同的网桥。所以必须都在同一个网桥之下才行。如果不在的话,在DomU的c

2012-10-27 20:14:51 558

转载 scanf、getchar、gets的比较

原文地址:http://blog.csdn.net/qqgrowing/article/details/6744889 scanf(); 输入形式:scanf("%d",&a);   scanf("%s",a)(或scanf("%s",&a),不正规); 一一对应:%d  int ;%f  float ;%lf   double ;%ld  long ;%I64d  __int64 ;%

2012-10-17 00:47:30 204

转载 正则表达式30分钟入门教程

正则表达式30分钟入门教程 别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有你想像中的那么困难。当然,如果你看完了这篇教程之后,发现自己明白了很多,却又几乎什么都记不得,那也是很正常的——我认为,没接触过正则表达式的人在看完这篇教程后,能把提到过的语法记住80%以上的可能性为零。这里只是让你明白基本的原理,以后你还需要多练习,多使用,才能熟练掌握正则表达式。

2012-10-17 00:42:20 488

转载 gnome-terminal打开最大化

原文地址:http://blog.chinaunix.net/uid-21142030-id-2750929.html 每次打开都要使用最大化按钮或ALT+F10,感觉不是很方便。 使用alias gnome-terminal='gnome-terminal --maximize'也只能在终端下打开新窗口时最大化,而现在一般是使用标签页的,所以用处不大,但还是添加了。 最好的办法是在图标上做

2012-10-15 22:50:17 220

转载 关于C语言中return的一些总结!!!

******************************************************************************************* /* /************************关于C语言中return的一些总结!!! ************************************ /* /**************

2012-10-12 00:45:47 645

转载 C语言中的break、continue和goto三者的区别与用法

break和continue的使用范围比较一致,两都可以用于循环,其中break还可以用于switch。功能上也有一定的相似性,break就相当于退学,continue则相当于跳级。对于break,程序究竟跳到哪儿比较好理解。但是continue究竟跳到哪儿去了,初学者可能有些疑惑,不妨就当它跳到了循环体最后一句语句的后面。   如果它们处在由多重循环和switch组成的圈圈里,那么它们就对包括

2012-10-12 00:36:32 1109

转载 vim设置

"========================================================================= " DesCRiption: 适合自己使用的vimrc文件,for Linux/Windows, GUI/Console " " Last Change: 2010年08月02日 15时13分 " " Version: 1.80 " "

2012-10-09 22:46:47 144

转载 指针作参数的常见错误

一、对参数指针的地址修改 参数的地址是可以修改的,修改后的地址是不可能传回给调用处的指针变量。也就是说,可以修改参数地址所指的单元的值,这是可以传回到调用处的变量里面的。 #include #include #include int subFunc(int arr[3]); //交换两整数 void change(int *data1, int *data2) { int

2012-10-07 00:23:16 186

转载 __attribute__机制介绍

原文地址:http://blog.csdn.net/sunboy_2050/article/details/6566739 1. __attribute__ GNU C的一大特色(却不被初学者所知)就是__attribute__机制。 __attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Ty

2012-10-07 00:11:24 175

转载 #pragma pack

来自百度百科:http://baike.baidu.com/view/2317161.htm 目录 一、n字节的对齐方式二、#pragma pack(n) 对齐用法详解 一、n字节的对齐方式   VC对结构的存储的特殊处理确实提高CPU存储变量的速度,但是有时候也带来了一些麻烦,我们也屏蔽掉变量默认的对齐方式,自己可以设定变量的对齐方式。VC中提供了#pragma pa

2012-10-06 23:56:08 152

转载 C语言运算符优先级 详细列表

文章作者:姜南(Slyar) 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。 恩,问这个问题的人太多了,懒得继续回答,直接贴上来自己看。。。 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式]

2012-10-06 08:15:05 184

转载 单元测试的基本方法

原文地址:http://www.spasvo.com/html/ceshi/20080618-156.html 泽众软件:在软件测试中,单元测试的最小单位是模块。单元测试的依据是详细设描述,单元测试应对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误。单元测试多采用白盒测试技术,系统内多个模块可以并行地进行软件测试。 单元测试任务   单元测试任务包括:1 模块接口测试;

2012-10-04 16:25:55 142

转载 程序员的信仰

原文地址:http://www.cnblogs.com/coderzh/archive/2009/06/13/1500042.html 老婆经常夸我有想法,得益于老婆大人的鼓励,我才打算将自己平时所想,所总结的东西写下来。人是需要不断总结的,有总结才会有进步。所谓总结,并不一定是多么高深的道理,多么复杂的推论,也并不一定要长篇大论。有时,一句话,或是一个瞬间,会让你明白很多。 首先,严

2012-10-04 16:21:44 161

转载 gdb的基本工作原理是什么?

还是面某M的时候,面试官问我:“用过gdb么?” 答:“用过,调了两年bug了”。“那好,给我解释下gdb是怎么工作的?或者说跟内核什么地方有关系?”。 是阿,gdb凭什么可以调试一个程序?凭什么能够接管一个程序的运行?我以前也想过这样的问题,但是后来居然忘记去查看了。我想到了我们的二进制翻译器,想到了intel的pin,Dynamo。这些都是将翻译后的代码放到codecache中去运行,然后接

2012-10-04 11:03:22 510

原创 map、set、list、pair网上摘抄汇总

Map 是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下map内部数据的组织,map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,后边我们会见识

2012-10-01 10:18:35 352

转载 看我姐和我妹子如何学编程编程是一种艺术创作 德问 看我姐和我妹子如何学编程 杨玉廷 | 九月 19, 2012 | 7 评论

就像我在上一篇博文中提到的,Eva和Fong(译者注:根据博主的上一篇博文,Eva是博主的姐姐,Fong是博主的妹子)来到旧金山跟我学编程。在这篇博文中,我将记录下我教她们的方式,我构建这种学习过程的理由,以及这种学习方式奏效的原因。虽然以时间顺序列出她们在这段时间做的或学习的每一件事再容易不过,但是这毫无用处,而且读者们也会遗漏重点。了解学习过程中的细节并且明白它起作用的原因至关重要。所以我会从

2012-09-28 23:33:37 3687

转载 编程是一种艺术创作 德问 程序员,你会问问题吗?(来自德问)

本文作者:池建强 | 原文地址:程序员,你会问问题吗? 由于一直从事技术和平台产品方面的工作,我们部门经常会收到公司内外同事和同仁的问题邮件,有些好的问题能让你发现自己技术上的缺陷、产品的bug或提升的空间,去思考、回答和解决这样的问题真是一件让人愉悦,充满挑战和成就感的事情。但是非常遗憾的是,这样的好问题却是凤毛麟角。我经常会被一些莫名其妙的问题搞的啼笑皆非,比如: 程序运行过程中突

2012-09-28 22:58:31 1080

转载 C语言详解sizeof

原文地址:http://blog.sina.com.cn/s/blog_5da08c340100bmwu.html 一、sizeof的概念     sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。     它并不是函数。     sizeof操作符以字节形式给出了其操作数的存储大小。     操作数可以是一个表达式或括在括号内的类型名。     操作数的存储

2012-09-26 23:56:46 407

转载 C语言的内存布局问题

1 。 每次都会遇到这个问题,一直是看了又忘,忘了又看。本文主要简介一下c中的内存类型和布局问题。       2。内存的类型       (1)栈区(stack):由编译器自动分配和释放的,存放函数的参数值、局部变量的值等。操作方式类似数据结构中的栈。                在函数参数和地址入栈情况中,一般是从左向右将变量入栈,最后函数的地址入栈。       (2)堆区(hea

2012-09-26 23:55:34 578

转载 C语言中extern的作用

1 基本解释   extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。   另外,extern也可用来进行链接指定。 2 问题:extern 变量   在一个源文件里定义了一个数组: char a[6];   在另外一个文件里用下列语句进行了声明: extern char *a;   请问,这样可以吗?

2012-09-26 23:53:45 451

转载 关键字typedef用法(转)

C/C++语言中的typedef相信大家已经不陌生,本文对C/C++语言关键字typedef的各种用法作一个介绍。 typedef,顾名思义,为“类型定义”,可以解释为:将一种数据类型定义为某一个标识符,在程序中使用该标识符来实现相应数据类型变量的定义。例如:   typedef unsigned int UINT; int main (int argc, char *argv[]) {

2012-09-26 23:46:12 133

转载 深入理解C/C++数组和指针

版权所有,转载请注明出处,谢谢! http://blog.csdn.net/walkinginthewind/article/details/7044380 C语言中数组和指针是一种很特别的关系,首先本质上肯定是不同的,本文从各个角度论述数组和指针。 一、数组与指针的关系 数组和指针是两种不同的类型,数组具有确定数量的元素,而指针只是一个标量值。数组可以在某些情况下转换为指针,当数组名

2012-09-26 23:26:06 390

转载 关于ASSERT(断言)使用的规则--摘自《高质量C/C++编程指南》

程序一般分为Debug 版本和Release 版本,Debug 版本用于内部调试,Release 版本发行给用户使用。 断言assert 是仅在Debug 版本起作用的宏,它用于检查“不应该”发生的情况。示例6-5 是一个内存复制函数。在运行过程中,如果assert 的参数为假,那么程序就会中止(一般地还会出现提示对话,说明在什么地方引发了assert)。 void *memcpy(void

2012-09-26 22:53:07 490

转载 联合体内存对齐

union DATE { char a; int i[5]; double b; }; DATE max; cout sizeof(max) endl; 这个问题很好回答,并且我把这个问题归结于基本概念题(就是入门书必须介绍的)。我想一般来说,做过内存管理的,对这个语言特性肯定不会陌生。 摘几句The C Programming Language里面讲述这个

2012-09-26 22:49:31 434

转载 32位和64位数据类型区别

数据类型  32位  64位  char  1  1  int  4  4  long  4  8  float  4  4  double  8  8  long double  12  16  long long 8 8 sizeof(char),sizeof(char*

2012-09-26 22:25:02 244

转载 GDB中应该知道的几个调试方法

一、多线程调试 多线程调试可能是问得最多的。其实,重要就是下面几个命令: info thread 查看当前进程的线程。thread 切换调试的线程为指定ID的线程。break file.c:100 thread all  在file.c文件第100行处为所有经过这里的线程设置断点。set scheduler-locking off|on|step,这个是问得最多的。在使用step或者co

2012-09-24 22:42:30 304

FeiQ工具更新版

现在正在使用的一个FeiQ版本,个人认为不错,欢迎使用

2015-02-06

空空如也

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

TA关注的人

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