IT General
文章平均质量分 83
shuangshui
这个作者很懒,什么都没留下…
展开
-
我对c++输入输出流的理解
c++没有内置输入输出功能。原因:脱离系统硬件。这正是c++的优点之一。如果为某操作系统设计了这种功能,那么,c++也就绑死在这系统上了。通过include 标准输入输出文件,我们可以方便的实现所需要的功能。C-programmer都很熟悉stdio.h这个文件,以及诸如printf 和scanf这两个函数,c++做了改进,引入了iostream,注意,不是iostrea原创 2009-04-21 09:37:00 · 1641 阅读 · 0 评论 -
结构体的sizeof 运算 详细介绍
有的时候,在脑海中停顿了很久的“显而易见”的东西,其实根本上就是错误的。就拿下面的问题来看:struct T{ char ch; int i ;};使用sizeof(T),将得到什么样的答案呢?要是以前,想都不用想,在32位机中,int是4个字节,char是1个字节,所以T一共是5个字节转载 2009-10-07 12:49:00 · 495 阅读 · 0 评论 -
如何查看ubuntu版本信息
cat /etc/issue返回结果Ubuntu 6.06 “Dapper Drake” Development Branch l或者cat /proc/version返回结果Linux version 2.6.12-10-k7 (buildd@terranova) (gcc version 3.4.520050809 (prerelease) (Ubunt转载 2009-06-14 19:40:00 · 5031 阅读 · 0 评论 -
Linux 环境下的 make 和 makefile 命令详解
无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或makeinstall。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make和makefile工具就可以简洁明快地理顺各个源文件之间纷繁复杂的相互关系。而且如此多的源文件,如果每转载 2009-06-12 09:53:00 · 492 阅读 · 0 评论 -
目标文件详解
【IT专家网独家】编译器编译源代码后生成的文件叫做目标文件,那么目标文件里面到底存放的是什么呢?或者我们的源代码在经过编译以后是怎么存储的?我们将在这一节剥开目标文件的层层外壳,去探索它最本质的内容。 目标文件从结构上讲,它是已经编译后的可执行文件格式,只是还没有经过链接的过程,其中可能有些符号或有些地址还没有被调整。其实它本身就是按照可执行文件格式存储的,只是跟真正的可执行文件在结构上转载 2009-06-12 10:17:00 · 1184 阅读 · 0 评论 -
Linux 中的 cc 命令
% cc foobar.c 就会把 foobar.c 通过以上的步骤编译出来。如果你有多个文件要编译,只要输入% cc foo.c bar.c 注意,语法检查就是──纯粹的检查语法。而不会检测你可能犯的任何逻辑错误。比如无限循环,或者是你想用一元排序却使用了冒泡排序。 cc 有很多选项,在帮助手册中都可以找到。这里列出了一些最重转载 2009-06-12 09:44:00 · 1122 阅读 · 0 评论 -
Linux 的 启动 磁盘管理 文件操作
这里之讲一下基于intel的计算机启动过程1:上电,FFFF0H,JMP命令2:进入ROM-BIOS程序3:POST (power-on self test)4:进入主引导分区,包括 主引导记录MBR和DPT硬盘分区表5:交由GRUB或者LILO处理6:linux内核解压缩7:第一个用户级进程init启动,读取 etc/inittab文件,设置getty8:logi原创 2009-06-09 09:33:00 · 369 阅读 · 0 评论 -
Linux 简介
1991年,芬兰赫尔辛基大学的学生 Linus Torvals 根据老师的minix 系统 设计出了一个包含 任务切换器,文件系统和硬件驱动程序的 内核,也就是 Linux的始祖咯! 之所以命名为Linux,是因为这是Linus的笔名。他把Linux放在了Internet上供大家自由下载。这个已经具备了OS雏形的内核,随后设置为 遵循GPL规范,无数的计算机高手加入到这个自由的活动中来,无偿的为丰原创 2009-06-04 14:47:00 · 308 阅读 · 0 评论 -
判断单链表是否存在环,判断两个链表是否相交问题详解
有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。问题:1、如何判断一个链表是不是这类链表?2、如果链表为存在环,如果找到环的入口点?解答:一、判断链表是否存在环,办法为:设置两个指针(fast, slow),初始值都指向头,slow每次前进一步,fast每次前进二步,如果链表存在环,则fast必定先进入环,而slow后进入环,两个指针转载 2009-04-24 15:54:00 · 351 阅读 · 0 评论 -
堆栈与函数调用
1) 在栈上创建。在执行函数时,函数内局部变量的存储单元都在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,一般使用寄存器来存取,效率很高,但是分配的内存容量有限。 2) 从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete来释放内存。动态内存的生存期由程序员自己决定,使用非常灵活转载 2009-04-23 10:17:00 · 569 阅读 · 0 评论 -
C++ 的 声明&定义&初始化
在C++和Java中,我们在使用一个标识符之前必须对它进行声明。标识符的声明和标识符的定义并不是一回事(虽然绝大数情况下它们看起来并没有什么不同)。在声明中,除非我们为一个标识符分配了足够的内存,否则这个标识符便没有被定义。另外,当一个标识符作为一个变量的名称时,我们还将面临的一个问题是,这个变量在定义之时是否得到了缺省的初始值。所以判定一条语句时候,可以用这个规则:是否声明-->声明后是否定义(转载 2009-04-23 10:23:00 · 573 阅读 · 0 评论 -
MFC 简介
MFC,微软基础类(Microsoft Foundation Classes),同VCL类似,是一种Application Framework,随微软Visual C++开发工具发布。目前最新版本为8.0(截止2007年初)。该类库提供一组通用的可重用的类库供开发人员使用。大部分类均从CObject直接或间接派生,只有少部分类例外。 MFC 应用程序的总体结构转载 2009-04-23 09:14:00 · 617 阅读 · 0 评论 -
网络流算法
网络流算法:概念在实际生活中有许多流量问题,例如在交通运输网络中的人流、车流、货物流,供水网络中的水流,金融系统中的现金流,通讯系统中的信息流,等等。50年代以福特(Ford)、富克逊(Fulkerson)为代表建立的“网络流理论”,是网络应用的重要组成部分。在最近的奥林匹克信息学竞赛中,利用网络流算法高效地解决问题已不是什么稀罕的事了。本节着重介绍最大流(包括最小费转载 2009-04-22 21:40:00 · 3227 阅读 · 0 评论 -
预编译头pch
所谓的预编译头就是把一个工程中的那一部分代码,预先编译好放在一个文件里(通常是 以.pch为扩展名的),这个文件就称为预编译头文件这些预先编译好的代码可以是任何的 C/C++代码--------甚至是inline的函数,但是必须是稳定的,在工程开发的过程中不会 被经常改变。如果这些代码被修改,则需要重新编译生成预编译头文件。注意生成预编 译头文件是很耗时间的。同时你得注意转载 2009-04-23 09:19:00 · 450 阅读 · 0 评论 -
最近所学网络知识的一个总结
本来打算好好把基础的网络知识搞搞清的,作为一个工科男生,虽说不是CS的,但是如我这般对网络所知基本空白的人,大约也是极少数了,正好最近老师不怎么管,所以抽了不到一个星期的时间扫了一下盲,昨天老师又分配任务了,也不知道以后还能不能深入的学习和应用网络这方面的知识,这里只是谈一下一些很基础的吧,我是真正的新手上路,呵呵! 网络的雏形大约是60年代面向终端的计算机系统吧!但是真原创 2009-04-21 09:48:00 · 592 阅读 · 0 评论 -
关于类的基础介绍
c++被称为带类的c,可见,类当之无愧是c++的核心内容。以前看c++方面的书籍也看过不少,关于c++中类的那一部分章节也都仔细的看过,看过之后,觉得比较平常。当时的理解呢,c++中的类就是一个封装,在这个封装里有着多个数据成员,这些数据成员构成了这个类的属性,但是这些属性一般我们将之定义为private,在外面的interface层面,我们定义了函数来对这些属性进行操作。从另一个角度理原创 2009-04-21 09:43:00 · 767 阅读 · 0 评论 -
关于c++标准库的一些知识
C++标准库很大。非常大。难以置信的大。怎么个大法?这么说吧:在C++标准中,关于标准库的规格说明占了密密麻麻300多页,这还不包括标准C库,后者只是 "作为参考"(老实说,原文就是用的这个词)包含在C++库中。当然,并非总是越大越好,但在现在的情况下,确实越大越好,因为大的库会包含大量的功能。标准库中的功能越多,开发自己的应用程序时能借助的功能就越多。C++库并非提供了一切(很明显的转载 2009-04-21 09:34:00 · 500 阅读 · 0 评论 -
逆波兰表达式rpn
逆波兰表达式rpn(ReversePolishNotation)逆波兰表达式,它的语法规定,表达式必须以逆波兰表达式的方式给出。逆波兰表达式又叫做后缀表达式。这个知识点在数据结构和编译原理这两门课程中都有介绍,下面是一些例子:正常的表达式逆波兰表达式a ba,b, a (b-c)a,b,c,-, a (b-c)*da,d,b,c,-,*, a=1 3a=1,3 http=(smtp htt转载 2009-04-20 15:20:00 · 1769 阅读 · 0 评论 -
请热爱C++
下面的是学C++时要注意的。绝对经典。!!1.把C++当成一门新的语言学习(和C没啥关系!真的。);2.看《Thinking In C++》,不要看《C++变成死相》;3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看;4.不要被VC、BCB转载 2009-04-23 09:29:00 · 407 阅读 · 0 评论