首页 > > > C语言程序设计(谭浩强)第三版.pdf

C语言程序设计(谭浩强)第三版.pdf

C语言程序设计(谭浩强)第三版.pdf

上传者: oasis2city 2011-05-09 评分1 评论0 下载26 收藏10 阅读量695 暂无简介 简介 举报

简介:本文档为《C语言程序设计(谭浩强)第三版pdf》,可适用于IT书籍领域,主题内容包含谭浩强c语言程序设计C语言概述C语言的发展过程当代最优秀的程序设计语言C语言版本C语言的特点面向对象的程序设计语言C和C++简单的C程序介绍输入和输符等。

谭浩强c语言程序设计C语言概述C语言的发展过程当代最优秀的程序设计语言C语言版本C语言的特点面向对象的程序设计语言C和C++简单的C程序介绍输入和输出函数C源程序的结构特点书写程序时应遵循的规则C语言的字符集C语言词汇TurboC集成开发环境的使用TurboC简介和启动TurboC集成开发环境File菜单Edit菜单Run菜单Compile菜单Project菜单Options菜单Debug菜单Breakwatch菜单TurboC的配置文件程序的灵魂算法算法的概念简单算法举例算法的特性怎样表示一个算法用自然语言表示算法用流程图表示算法三种基本结构和改进的流程图用NS流程图表示算法用伪代码表示算法用计算机语言表示算法结构化程序设计方法数据类型、运算符与表达式C语言的数据类型常量与变量常量和符号常量变量整型数据整型常量的表示方法整型变量实型数据实型常量的表示方法实型变量实型常数的类型字符型数据字符常量转义字符字符变量字符数据在内存中的存储形式及使用方法字符串常量符号常量变量赋初值各类数值型数据之间的混合运算算术运算符和算术表达式C运算符简介算术运算符和算术表达式赋值运算符和赋值表达式逗号运算符和逗号表达式小结C的数据类型基本类型的分类及特点常量后缀常量类型数据类型转换运算符优先级和结合性表达式最简单的C程序设计顺序程序设计C语句概述赋值语句数据输入输出的概念及在C语言中的实现字符数据的输入输出putchar函数(字符输出函数)getchar函数(键盘输入函数)格式输入与输出printf函数(格式输出函数)scanf函数(格式输入函数)顺序结构程序设计举例分支结构程序关系运算符和表达式关系运算符及其优先次序关系表达式逻辑运算符和表达式逻辑运算符极其优先次序逻辑运算的值逻辑表达式if语句if语句的三种形式if语句的嵌套条件运算符和条件表达式switch语句程序举例循环控制概述goto语句以及用goto语句构成循环while语句dowhile语句for语句循环的嵌套几种循环的比较break和continue语句break语句continue语句程序举例数组一维数组的定义和引用一维数组的定义方式一维数组元素的引用一维数组的初始化一维数组程序举例二维数组的定义和引用二维数组的定义二维数组元素的引用二维数组的初始化二维数组程序举例字符数组字符数组的定义字符数组的初始化字符数组的引用字符串和字符串结束标志字符数组的输入输出字符串处理函数程序举例本章小结函数概述函数定义的一般形式函数的参数和函数的值形式参数和实际参数函数的返回值函数的调用函数调用的一般形式函数调用的方式被调用函数的声明和函数原型函数的嵌套调用函数的递归调用数组作为函数参数局部变量和全局变量局部变量全局变量变量的存储类别动态存储方式与静态动态存储方式auto变量用static声明局部变量register变量用extern声明外部变量预处理命令概述宏定义无参宏定义带参宏定义文件包含条件编译本章小结指针地址指针的基本概念变量的指针和指向变量的指针变量定义一个指针变量指针变量的引用指针变量作为函数参数指针变量几个问题的进一步说明数组指针和指向数组的指针变量指向数组元素的指针通过指针引用数组元素数组名作函数参数指向多维数组的指针和指针变量字符串的指针指向字符串的针指变量字符串的表示形式使用字符串指针变量与字符数组的区别函数指针变量指针型函数指针数组和指向指针的指针指针数组的概念指向指针的指针main函数的参数有关指针的数据类型和指针运算的小结有关指针的数据类型的小结指针运算的小结void指针类型结构体与共用体定义一个结构的一般形式结构类型变量的说明结构变量成员的表示方法结构变量的赋值结构变量的初始化结构数组的定义结构指针变量的说明和使用指向结构变量的指针指向结构数组的指针结构指针变量作函数参数动态存储分配链表的概念枚举类型枚举类型的定义和枚举变量的说明枚举类型变量的赋值和使用类型定义符typedef位运算位运算符C语言提供了六种位运算符:按位与运算按位或运算按位异或运算求反运算左移运算右移运算位域(位段)本章小结文件C文件概述文件指针文件的打开与关闭文件的打开(fopen函数)文件关闭函数(fclose函数)文件的读写字符读写函数fgetc和fputc字符串读写函数fgets和fputs数据块读写函数fread和fwtrite格式化读写函数fscanf和fprintf文件的随机读写文件定位文件的随机读写文件检测函数文件结束检测函数feof函数读写文件出错检测函数文件出错标志和文件结束标志置函数C库文件本章小结谭浩强C语言程序设计年月日C语言教程C语言概述C语言的发展过程C语言是在年代初问世的。一九七八年由美国电话电报公司(ATT)贝尔实验室正式发表了C语言。同时由BWKernighan和DMRitchit合著了著名的“THECPROGRAMMINGLANGUAGE”一书。通常简称为《KR》也有人称之为《KR》标准。但是在《KR》中并没有定义一个完整的标准C语言后来由美国国家标准协会(AmericanNationalStandardsInstitute)在此基础上制定了一个C语言标准于一九八三年发表。通常称之为ANSIC。当代最优秀的程序设计语言早期的C语言主要是用于UNIX系统。由于C语言的强大功能和各方面的优点逐渐为人们认识到了八十年代C开始进入其它操作系统并很快在各类大、中、小和微型计算机上得到了广泛的使用成为当代最优秀的程序设计语言之一。C语言版本目前最流行的C语言有以下几种:MicrosoftC或称MSCBorlandTurboC或称TurboCATTC这些C语言版本不仅实现了ANSIC标准而且在此基础上各自作了一些扩充使之更加方便、完美。C语言的特点C语言简洁、紧凑使用方便、灵活。ANSIC一共只有个关键字:autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedstaticsizofstructswitchtypedefunionunsignedvoidvolatilewhile种控制语句程序书写自由主要用小写字母表示压缩了一切不必要的成分。TurboC扩充了个关键字:asmcsdsessscdeclfar谭浩强C语言程序设计年月日hugeinterruptnearpascal注意:在C语言中关键字都是小写的。运算符丰富。共有种。C把括号、赋值、逗号等都作为运算符处理。从而使C的运算类型极为丰富可以实现其他高级语言难以实现的运算。数据结构类型丰富。具有结构化的控制语句。语法限制不太严格程序设计自由度大。C语言允许直接访问物理地址能进行位(bit)操作能实现汇编语言的大部分功能可以直接对硬件进行操作。因此有人把它称为中级语言。生成目标代码质量高程序执行效率高。与汇编语言相比用C语言写的程序可移植性好。但是C语言对程序员要求也高程序员用C写程序会感到限制少、灵活性大功能强但较其他高级语言在学习上要困难一些。面向对象的程序设计语言在C的基础上一九八三年又由贝尔实验室的BjarneStroustrup推出了C。C进一步扩充和完善了C语言成为一种面向对象的程序设计语言。C目前流行的最新版本是BorlandC,SymantecC和MicrosoftVisualC。C提出了一些更为深入的概念它所支持的这些面向对象的概念容易将问题空间直接地映射到程序空间为程序员提供了一种与传统结构程序设计不同的思维方式和编程方法。因而也增加了整个语言的复杂性掌握起来有一定难度。C和C++但是C是C的基础C语言和C语言在很多方面是兼容的。因此掌握了C语言再进一步学习C就能以一种熟悉的语法来学习面向对象的语言从而达到事半功倍的目的。简单的C程序介绍为了说明C语言源程序结构的特点先看以下几个程序。这几个程序由简到难表现了C语言源程序在组成结构上的特点。虽然有关内容还未介绍但可从这些例子中了解到组成一个C源程序的基本部分和书写格式。【例】main(){printf("世界您好!n")}zmain是主函数的函数名表示这是一个主函数。z每一个C源程序都必须有且只能有一个主函数(main函数)。z函数调用语句printf函数的功能是把要输出的内容送到显示器去显示。谭浩强C语言程序设计年月日zprintf函数是一个由系统定义的标准函数可在程序中直接调用。【例】#include<mathh>#include<stdioh>main(){doublex,sprintf("inputnumber:n")scanf("lf",x)s=sin(x)printf("sineoflfislfn",x,s)}zinclude称为文件包含命令z扩展名为h的文件称为头文件z定义两个实数变量以被后面程序使用z显示提示信息z从键盘获得一个实数xz求x的正弦,并把它赋给变量sz显示程序运算结果zmain函数结束程序的功能是从键盘输入一个数x求x的正弦值然后输出结果。在main()之前的两行称为预处理命令(详见后面)。预处理命令还有其它几种这里的include称为文件包含命令其意义是把尖括号<>或引号""内指定的文件包含到本程序来成为本程序的一部分。被包含的文件通常是由系统提供的其扩展名为h。因此也称为头文件或首部文件。C语言的头文件中包括了各个标准库函数的函数原型。因此凡是在程序中调用一个库函数时都必须包含该函数原型所在的头文件。在本例中使用了三个库函数:输入函数scanf正弦函数sin,输出函数printf。sin函数是数学函数其头文件为mathh文件因此在程序的主函数前用include命令包含了mathh。scanf和printf是标准输入输出函数其头文件为stdioh在主函数前也用include命令包含了stdioh文件。需要说明的是C语言规定对scanf和printf这两个函数可以省去对其头文件的包含命令。所以在本例中也可以删去第二行的包含命令#include<stdioh>。同样在例中使用了printf函数也省略了包含命令。在例题中的主函数体中又分为两部分一部分为说明部分另一部为分执行部分。说明是指变量的类型说明。例题中未使用任何变量因此无说明部分。C语言规定源程序中所有用到的变量都必须先说明后使用否则将会出错。这一点是编译型高级程序设计语言的一个特点与解释型的BASIC语言是不同的。说明部分是C源程序结构中很重要的组成部分。本例中使用了两个变量xs用来表示输入的自变量和sin函数值。由于sin函数要求这两个量必须是双精度浮点型故用类型说明符double来说明这两个变量。说明部分后的四行为执行部分或称为执行语句部分用以完成程序的功能。执行部分的第一行是输出语句调用printf函数在显示器上输出提示字符串请操作人员输入自变量x的值。第二行为输入语句调用scanf函数接受键盘上输入的数并存入变量x中。第三行是调用sin函数并把函数值送到变量s中。第四行是用printf函数输出变量s的值即x的正弦值。程序结束。运行本程序时首先在显示器屏幕上给出提示串inputnumber这是由执行部分的第一谭浩强C语言程序设计年月日行完成的。用户在提示下从键盘上键入某一数如按下回车键接着在屏幕上给出计算结果。输入和输出函数在前两个例子中用到了输入和输出函数scanf和printf在以后要详细介绍。这里我们先简单介绍一下它们的格式以便下面使用。scanf和printf这两个函数分别称为格式输入函数和格式输出函数。其意义是按指定的格式输入输出值。因此这两个函数在括号中的参数表都由以下两部分组成:“格式控制串”参数表格式控制串是一个字符串必须用双引号括起来它表示了输入输出量的数据类型。各种类型的格式表示法可参阅第三章。在printf函数中还可以在格式控制串内出现非格式控制字符这时在显示屏幕上将原文照印。参数表中给出了输入或输出的量。当有多个量时用逗号间隔。例如:printf("sineoflfislfn",x,s)其中lf为格式字符表示按双精度浮点数处理。它在格式串中两次现对应了x和s两个变量。其余字符为非格式字符则照原样输出在屏幕上。【例】intmax(inta,intb)*函数说明*main()*主函数*{intx,y,z*变量说明*intmax(inta,intb)*函数说明*printf("inputtwonumbers:n")scanf("dd",x,y)*输入x,y值*z=max(x,y)*调用max函数*printf("maxmum=d",z)*输出*}intmax(inta,intb)*定义max函数*{if(a>b)returnaelsereturnb*把结果返回主调函数*}上面例中程序的功能是由用户输入两个整数程序执行后输出其中较大的数。本程序由两个函数组成主函数和max函数。函数之间是并列关系。可从主函数中调用其它函数。max函数的功能是比较两个数然后把较大的数返回给主函数。max函数是一个用户自定义函数。因此在主函数中要给出说明(程序第三行)。可见在程序的说明部分中不仅可以有变量说明还可以有函数说明。关于函数的详细内容将在以后第五章介绍。在程序的每行后用*和*括起来的内容为注释部分程序不执行注释部分。上例中程序的执行过程是首先在屏幕上显示提示串请用户输入两个数回车后由scanf函数语句接收这两个数送入变量x,y中然后调用max函数并把x,y的值传送给max函数的参数a,b。在max函数中比较a,b的大小把大者返回给主函数的变量z最后在屏幕上输出z的值。谭浩强C语言程序设计年月日C源程序的结构特点一个C语言源程序可以由一个或多个源文件组成。每个源文件可由一个或多个函数组成。一个源程序不论由多少个文件组成都有一个且只能有一个main函数即主函数。源程序中可以有预处理命令(include命令仅为其中的一种)预处理命令通常应放在源文件或源程序的最前面。每一个说明每一个语句都必须以分号结尾。但预处理命令函数头和花括号“}”之后不能加分号。标识符关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符也可不再加空格来间隔。书写程序时应遵循的规则从书写清晰便于阅读理解维护的角度出发在书写程序时应遵循以下规则:一个说明或一个语句占一行。用{}括起来的部分通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐并单独占一行。低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰增加程序的可读性。在编程时应力求遵循这些规则以养成良好的编程风格。C语言的字符集字符是组成语言的最基本的元素。C语言字符集由字母数字空格标点和特殊字符组成。在字符常量字符串常量和注释中还可以使用汉字或其它可表示的图形符号。字母小写字母a~z共个大写字母A~Z共个数字~共个空白符空格符、制表符、换行符等统称为空白符。空白符只在字符常量和字符串常量中起作用。在其它地方出现时只起间隔作用编译程序对它们忽略不计。因此在程序中使用空白符与否对程序的编译不发生影响但在程序中适当的地方使用空白符将增加程序的清晰性和可读性。标点和特殊字符C语言词汇在C语言中使用的词汇分为六类:标识符关键字运算符分隔符常量注释符等。谭浩强C语言程序设计年月日标识符在程序中使用的变量名、函数名、标号等统称为标识符。除库函数的函数名由系统定义外其余都由用户自定义。C规定标识符只能是字母(A~Za~z)、数字(~)、下划线()组成的字符串并且其第一个字符必须是字母或下划线。以下标识符是合法的:a,x,x,BOOK,sum以下标识符是非法的:s以数字开头s*T出现非法字符*x以减号开头bowy出现非法字符(减号)在使用标识符时还必须注意以下几点:()标准C不限制标识符的长度但它受各种版本的C语言编译系统限制同时也受到具体机器的限制。例如在某版本C中规定标识符前八位有效当两个标识符前八位相同时则被认为是同一个标识符。()在标识符中大小写是有区别的。例如BOOK和book是两个不同的标识符。()标识符虽然可由程序员随意定义但标识符是用于标识某个量的符号。因此命名应尽量有相应的意义以便于阅读理解作到“顾名思义”。关键字关键字是由C语言规定的具有特定意义的字符串通常也称为保留字。用户定义的标识符不应与关键字相同。C语言的关键字分为以下几类:()类型说明符用于定义、说明变量、函数或其它数据结构的类型。如前面例题中用到的int,double等()语句定义符用于表示一个语句的功能。如例中用到的ifelse就是条件语句的语句定义符。()预处理命令字用于表示一个预处理命令。如前面各例中用到的include。运算符C语言中含有相当丰富的运算符。运算符与变量函数一起组成表达式表示各种运算功能。运算符由一个或多个字符组成。分隔符在C语言中采用的分隔符有逗号和空格两种。逗号主要用在类型说明和函数参数表中分隔各个变量。空格多用于语句各单词之间作间隔符。在关键字标识符之间必须要有一个以上的空格符作间隔否则将会出现语法错误例如把inta写成intaC编译器会把inta当成一个标识符处理其结果必然出错。常量C语言中使用的常量可分为数字常量、字符常量、字符串常量、符号常量、转义字符等多种。在后面章节中将专门给予介绍。注释符C语言的注释符是以“*”开头并以“*”结尾的串。在“*”和“*”之间的即为注释。程序编译时不对注释作任何处理。注释可出现在程序中的任何位置。注释用来向用户提示或解释程序的意义。在调试程序中对暂不使用的语句也可用注释符括起来使翻译跳过不作处理待调试结束后再去掉注释符。谭浩强C语言程序设计年月日TurboC集成开发环境的使用TurboC简介和启动我们上机实习和将来考试都是使用BorlandTurboC这个版本。该系统是DOS操作系统支持下的软件在windows环境下可以在DOS窗口下运行。我们机房是在D盘根目录下建立一个TC子目录下安装TurboC系统的。TC下还建立了两个了目录LIB和INCLUDE,LIB子目录中存放库文件,INCLUDE子目录中存放所有头文件。在DOS环境下或在windows的DOS窗口下运行运行TurboC时,只要在TC子目录下键入TC并回车即可进入TurboC集成开发环境。在windows环境下也可以选运行菜单然后键入d:tctc即可也可以在tc文件夹找到tcexe文件然后用鼠标双击该文件名也可进入TurboC集成开发环境。TurboC是美国Borland公司的产品,Borland公司是一家专门从事软件开发、研制的大公司。该公司相继推出了一套Turbo系列软件,如TurboBASIC,TurboPascal,TurboProlog,这些软件很受用户欢迎。该公司在年首次推出TurboC产品,其中使用了全然一新的集成开发环境,即使用了一系列下拉式菜单,将文本编辑、程序编译、连接以及程序运行一体化,大大方便了程序的开发。年,Borland公司又推出TurboC版本,增加了图形库和文本窗口函数库等,而TurboC则是该公司年出版的。TurboC在原来集成开发环境的基础上增加了查错功能,并可以在Tiny模式下直接生成COM(数据、代码、堆栈处在同一K内存中)文件。还可对数学协处理器(支持等)进行仿真。Borland公司后来又推出了面向对象的程序软件包TurboC,它继承发展TurboC的集成开发环境,并包含了面向对象的基本思想和设计方法。年为了适用Microsoft公司的Windows版本,Borland公司又将TurboC作了更新,即TurboC的新一代产品BorlandcC也已经问世了。TurboC集成开发环境进入TurboC集成开发环境中后,屏幕上显示:谭浩强C语言程序设计年月日其中顶上一行为TurboC主菜单,中间窗口为编辑区,接下来是信息窗口,最底下一行为参考行。这四个窗口构成了TurboC的主屏幕,以后的编程、编译、调试以及运行都将在这个主屏幕中进行。主菜单在TurboC主屏幕顶上一行,显示下列内容:FileEditRunCompileProjectOptionsDebugBreakwatch除Edit外,其它各项均有子菜单,只要用Alt加上某项中第一个字母,就可进入该项的子菜单中。File菜单按AltF可进入File菜单,如图:File菜单的子菜单共有项分别叙述如下:Load:装入一个文件,可用类似DOS的通配符(如*C)来进行列表选择。也可装入其它谭浩强C语言程序设计年月日扩展名的文件,只要给出文件名(或只给路径)即可。该项的热键为F,即只要按F即可进入该项,而不需要先进入File菜单再选此项。Pick:将最近装入编辑窗口的个文件列成一个表让用户选择,选择后将该程序装入编辑区,并将光标置在上次修改过的地方。其热健为AltF。New:新建文件,缺省文件名为NONAMEC,存盘时可改名。Save:将编辑区中的文件存盘,若文件名是NONAMEC时,将询问是否更改文件名,其热键为F。Writeto:可由用户给出文件名将编辑区中的文件存盘,若该文件已存在,则询问要不要覆盖。Directory:显示目录及目录中的文件,并可由用户选择。Changedir:显示当前默认目录,用户可以改变默认目录。Osshell:暂时退出TurboC到DOS提示符下,此时可以运行DOS命令,若想回到TurboC中,只要在DOS状态下键入EXIT即可。Quit:退出TurboC,返回到DOS操作系统中,其热键为AltX。说明:以上各项可用光标键移动色棒进行选择,回车则执行。也可用每一项的第一个大写字母直接选择。若要退到主菜单或从它的下一级菜单列表框退回均可用Esc键,TurboC所有菜单均采用这种方法进行操作,以下不再说明。Edit菜单按AltE可进入编辑菜单,若再回车,则光标出现在编辑窗口,此时用户可以进行文本编辑。编辑方法基本与wordstar相同,可用F键获得有关编辑方法的帮助信息。与编辑有关的功能键如下:F获得TurboC编辑命令的帮助信息F扩大编辑窗口到整个屏幕F在编辑窗口与信息窗口之间进行切换F从编辑窗口转到主菜单。编辑命令简介:PageUp向前翻页PageDn向后翻页Home将光标移到所在行的开始End将光标移到所在行的结尾CtrlY删除光标所在的一行CtrlT删除光标所在处的一个词CtrlKB设置块开始CtrlKK设置块结尾CtrlKV块移动CtrlKC块拷贝CtrlKY块删除CtrlKR读文件CtrlKW存文件CtrlKP块文件打印CtrlF如果光标所在处为TurboC库函数,则获得有关该函数的帮助信息谭浩强C语言程序设计年月日CtrlQ查找TurboC双界符的后匹配符CtrlQ查找TurboC双界符的前匹配符说明TurboC的双界符包括以下几种符号:)b辑文件时还有一种功能,就是能够自动缩进,即光标定位和上一个Run菜单按AltR可进入Run菜单,该菜单有以下各项如图所示::)a)花括符{和}b)尖括符<和>c)圆括符(和)d)方括符和e)注释符*和*f)双引号"g)单引号'TuroC在编非空字符对齐。在编辑窗口中,CtrlOL为自动缩进开关的控制键。Run:运行由ProjectProjectname项指定的文件名或当前编辑区的文件。如果对上次编译后的源代码未做过修改,则直接运行到下一个断点(没有断点则运行到结束)。否则先进行编译、连接后才运行,其热键为CtrlF。Programreset:中止当前的调试,释放分给程序的空间,其热键为CtrlF。在行必须,若用Traceinto项,则执行长条将用户函数调用,执行长条也不会跟踪进函Userscreen:显示程序运行时在屏幕上显示的结果。其热键为AltF。Gotocursor::调试程序时使用,选择该项可使程序运行到光标所在行。光标所为一条可执行语句,否则提示错误。其热键为F。Traceinto:在执行一条调用其它用户定义的子函数时跟踪到该子函数内部去执行,其热键为F。Stepover:执行当前函数的下一条语句,即使数内部,其热键为F。谭浩强C语言程序设计年月日Compile菜单单,该菜单有以下几个内容如图所示:按AltC可进入Compile菜CompiletoOBJ:将一个C源文件编译生成OBJ目标文件,同时显示生成的文件名。其热键为AltF。MakeEXEfile:此命令生成一个EXE的文件,并显示生成的EXE文件名。其中EXE文tProjectname说明的项目文件名。有文件名,则为当前窗口的文件名。LinkE成EXE文件。Buil:。该命令不作过时检查(上的日期和时间与目标文件件名是下面几项之一:)由Projec)若没有项目文件名,则由PrimaryCfile说明的源文件。)若以上两项都没EXfile:把当前OBJ文件及库文件连接在一起生dall重新编译项目里的所有文件,并进行装配生成EXE文件面几条命令要作过时检查,即如果目前项目里源文件的相同或更早,则拒绝对源文件进行编译)。PrimaryCfile:当在该项中指定了主文件后,在以后的编译中,如没有项目文件名则编译此项中规定的主C文件,如果编译中有错误,则将此文件调入编辑窗口,不管目前窗口中是不是主C文件。Getinfo:获得有关当前路径、源文件名、源文件字节大小、编译中的错误数目、可用空间等信息如图:谭浩强C语言程序设计年月日Project菜单按AltP可进入Project菜单,该菜单包括以下内容如图所示:Projectname:项目名具有PRJ的扩展名,其中包括将要编译、连接的文件名。例如有一个程序由filec,filec,filec组成,要将这个文件编译装配成一个fileexe的执行文件,可以先建立一个fileprj的项目文件,其内容如下:filecfilecfilec此时将fileprj放入Projectname项中,以后进行编译时将自动对项目文件中规定的三个源文件分别进行编译。然后连接成fileexe文件。如果其中有些文件已经编译成OBJ文谭浩强C语言程序设计年月日件,而又没有修改过,可直接写上OBJ扩展名。此时将不再编译而只进行连接。例如:fileobjfilecfilec将不对filec进行编译,而直接连接。说明:当项目文件中的每个文件无扩展名时,均按源文件对待,另外,其中的文件也可以是库文件,但必须写上扩展名LIB。Breakmakeon:由用户选择是否在有Warining、Errors、FatalErrors时或Link之前退出Make编译。Autodependencies:当开关置为on,编译时将检查源文件与对应的OBJ文件日期和时间,否则不进行检查。Clearproject:清除ProjectProjectname中的项目文件名。Removemessages:把错误信息从信息窗口中清除掉。Options菜单按AltO可进入Options菜单,该菜单对初学者来说要谨慎使用该菜单有以下几个内容如图所示:Compiler:本项选择又有许多子菜单,可以让用户选择硬件配置、存储模型、调试技术、代码优化、对话信息控制和宏定义。这些子菜单如图所示:谭浩强C语言程序设计年月日)Model:共有Tiny,small,medium,compact,large,huge六种不同模式可由同户选择。)Define:打开一个宏定义框,同户可输入宏定义。多重定义可同分号,赋值可用等号。)Codegeneration:它又有许多任选项,这些任选项告诉编译器产生什么样的目标代码。Callingconvention可选择C或Pascal方式传递参数。Instructionset可选择或指令系列。Floatingpoint可选择仿真浮点、数学协处理器浮点或无浮点运算。Defaultchartype规定char的类型。Alignonent规定地址对准原则。Mergeduplicatestrings作优化用,将重复的字符串合并在一起。Standardstackframe产生一个标准的栈结构。Teststackoverflow产生一段程序运行时检测堆栈溢出的代码。Linenumber在OBJ文件中放进行号以供调试时用。OBJdebuginformation在OBJ文件中产生调试信息。)Optimization:它又有许多任选项。Optimizefor选择是对程序小型化还是对程序速度进行优化处理。Useregistervariable用来选择是否允许使用寄存器变量。Re

精彩专题

热门资料

精选文章2007-2008北京市丰台区政府采购协议供货框架协议.doc

精选文章2007-2008学年下学期工作总结.doc

精选文章2007-2008学年度工作总结.doc

精选文章20070917100341开幕式致辞2.doc

编辑推荐

  • 名称/格式
  • 评分
  • 下载次数
  • 资料大小
  • 上传时间

用户评论

0/200
    暂无评论
上传我的资料

相关资料换一换

资料评价:

/ 855
所需积分:2 立即下载
返回
顶部
举报
资料
关闭

温馨提示

感谢您对爱问共享资料的支持,精彩活动将尽快为您呈现,敬请期待!