摘要: 本文来自IBMDW http://www.ibm.com/developerworks/cn/linux/l-vimdiff/源程序文件(通常是纯文本文件)比较和合并工具一直是软件开发过程中比较重要的组成部分。现在市场上很多功能很强大的专用比较和合并工具,比如 BeyondCompare;很多IDE 或者软件配置管理系统,比如Eclipse, Rational ClearCase都提供了内建的功能来支持文件的比较和合并。当远程工作在Unix/Linux平台上的时候,恐怕最简单而且到处存在的就是命令行工具,比如diff。可惜diff的功能有限,使用起来也不是很方便。作为命令行的比较工具,我们仍然 阅读全文
posted @ 2013-04-28 17:20 木有Some 阅读(22235) 评论(0) 推荐(1) 编辑
摘要: 一、关于企业计算方向 企业计算(Enterprise Computing)是稍时髦较好听的名词,主要是指企业信息系统,如ERP软件(企业资源规划)、CRM软件(客户关系管理)、SCM软件(供应链管理,即物流软件),银行证券软件,财务软件,电子商务/政务(包括各种网站),数据仓库,数据挖掘,商务智能等企业信息管理系统. 企业计算领域对人才的需求显然永远是数量最大的,因为这是计算机应用最多的领域. 搞这方面的好处是: (1)人才需求量极大,从事企业计算的公司在IT企业中占了大多数。除非在专业上一无特长,一般在这一领域总能找到工作。 (2)这方面的入门门槛相对较低(如果你的软件功底不是很深,可考虑这 阅读全文
posted @ 2013-04-09 16:20 木有Some 阅读(689) 评论(0) 推荐(0) 编辑
摘要: c/c++中内存区域划分大总结一、 在c中分为这几个存储区 1.栈 - 由编译器自动分配释放2.堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收3.全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。- 程序结束释放4.另外还有一个专门放常量的地方。- 程序结束释放5 程序代码区,存放2进制代码。在函数体中定义的变量通常是在栈上,用malloc, calloc, realloc等分配内存的函数分配得到的就是在堆上。在所有函数体外定义的是全局量,加了static修饰符后不管. 阅读全文
posted @ 2013-04-08 22:11 木有Some 阅读(557) 评论(0) 推荐(1) 编辑
摘要: 一般来说,透明是允许光穿透的属性。也就是说能看得见,能被知道的。但是计算机中透明的意思其实完全相反,“xx对用户完全透明”是指用户看不到,甚至完全不知道有这东西的存在,这里的透明变成了黑盒子。指客观存在并且运行着但是我们看不到的特性。客观存在的,但对于某些开发人员而言又不需要了解的东西,这就是计算机所指的透明性。简单来说,透明就是黑盒,你只需要应用它给出的接口,而不需要了解内在机理。真是截然不同的两种理解,透明反而什么都看不到了。 记得刚接触到这个词是在学习计算机网络的时候,网络中有“透明传输”这一说法,相信必定有很多初学者和我一样在初遇此词时折腾许久,甚至一直理解的是截然相反的第一种意... 阅读全文
posted @ 2013-04-04 23:19 木有Some 阅读(5605) 评论(10) 推荐(2) 编辑
摘要: 编写一个程序,以十六进制方式按字节输出一个int类型的每个字节。方法一:使用指针强制转换,将指向int型的指针强制转换成无符号char型,然后通过指针运算输出各个字节。 1 #include<stdio.h> 2 3 int main() 4 { 5 int i = 87654321; 6 7 unsigned char* j = (unsigned char*) &i; 8 9 printf("%X\n",*j);10 printf("%X\n",*(j + 1));11 printf("%X\n",*(j + 阅读全文
posted @ 2013-03-29 19:05 木有Some 阅读(1614) 评论(0) 推荐(0) 编辑
摘要: Linux下对文件操作有两种方式:系统调用(system call)和库函数调用(Library functions)。系统调用实际上就是指最底层的一个调用,在linux程序设计里面就是底层调用的意思,面向的是硬件。而库函数调用则面向的是应用开发的,相当于应用程序的api,采用这样的方式有很多种原因:1. 双缓冲技术的实现。2. 可移植性。3. 底层调用本身的一些性能方面的缺陷。4. 让api也可以有了级别和专门的工作面向。 1、系统调用 系统调用提供的函数如open, close, read, write, ioctl等,需包含头文件unistd.h.以write为例:其函数原型为 si.. 阅读全文
posted @ 2013-03-23 10:50 木有Some 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 一、工具的使用 1、学会使用vim/emacs,vim/emacs是 Linux下最常用的源码编辑具,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。新手的话推荐使用vim,这也是我目前使用的文本编辑器。 2、学会makefile文件的编写规则,并结合使用工具aclocal、autoconf和automake生成makefile文件。 3、掌握gcc和gdb的基本用法。掌握gcc的用法对于构建一个软件包很有益处,当软件包包含的文件比较多的时候,你还能用gcc把它手动编译出来,你就会对软件包中各个文件间的依赖关系有一个清晰的了解。 4、掌握svn/cvs的基本用法。这是l... 阅读全文
posted @ 2013-01-27 13:06 木有Some 阅读(358) 评论(0) 推荐(0) 编辑
摘要: ofstream是从内存到硬盘,ifstream是从硬盘到内存,其实所谓的流缓冲就是内存空间。 在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O,stream这个类有两个重要的运算符: 1、插入器(<<) 向流输出数据。比如说系统有一个默认的标准输出流(cout),一般情况下就是指的显示器,所以,cout<<"Write Stdout"<<'\n';就表示把字符串"Write Stdout"和换行字符('\n')输出到标准输出流。 2 阅读全文
posted @ 2013-01-25 11:52 木有Some 阅读(427) 评论(0) 推荐(0) 编辑
摘要: 本文来自褪墨,与大家分享。年底的朋友聚会,大家的话题往往集中在年初制定的梦想计划完成情况。我突然发现,“成功实现梦想的人总是相似的,而不成功的人则各有各的问题”。作为一个疗愈中的“梦想实践重度障碍者”,我深深地感到,尽管今天“梦想”这个词已经快被人谈滥了,我还是非常希望和大家一起探讨关于实践梦想的几个常见障碍,以及可能有效的应对方式。 第一种:“寻梦”障碍有些朋友说,我相信一定有什么事情是我特别想做的,是我一生的梦想和追求,只是我还不知道这件事到底是什么。我自己也有一些兴趣,但看上去都不像“一生的梦想”。于是,关于梦想的实践始终陷在第一步的寻找僵局中,不知何去何从。我曾经就属于这样的一类人,一 阅读全文
posted @ 2013-01-24 22:52 木有Some 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 2013年1月23日 15:57:44距离上一次更新这个系列(1月9号),整整两个星期没更新,仔细想想其中的原因有很多:复习考试、回家、还有些烦心事情。其实最大的因素还是自己的懈怠心理以及不合理的计划与时间管理。纵观这断断续续一个月的学习,主要存在的问题: 1. 计划不周全 虽然在学习,但是一直缺少一个全局的计划,可以让自己很清晰地知道自己什么时候该做什么。导致很多时候都是凭自己的喜好或者心情来做事情,自然就会有问题。 2. 时间管理混乱 这一条貌似和第一个问题有关系。两个问题是相互的。 3. 执行力太差 拖延症,经常想着这件事情等下再做,不停的拖延,要么就忘记这件事了,要么就导致任务累积起来 阅读全文
posted @ 2013-01-24 22:45 木有Some 阅读(324) 评论(0) 推荐(0) 编辑