《C语言集成开发环境安装使用图解解读课件.ppt》由会员分享,可在线阅读,更多相关《C语言集成开发环境安装使用图解解读课件.ppt(70页珍藏版)》请在三一办公上搜索。
1、主要内容,1 C程序开发过程2 C语言程序结构与语法规则 3 C语言集成开发环境安装与使用4 程序调试(Testing)和排误(Debugging),1 C语言程序的开发过程(1),C语言程序的开发过程是:使用编辑工具编写文本形式的C语言源文件编译生成以机器代码为主的可执行程序。开发一个C语言程序一般包括3个主要步骤:编辑,编译和连接。开发一个C程序的过程如图所示。,1 C语言程序的开发过程(2),1 C语言程序的开发过程-调试步骤的解释,编辑:根据求解算法,开发人员使用任意一款文本编辑器编辑代码,生成源程序代码,扩展名为.C。编译:编译时,编译器首先检查源程序中每条语句的词法和语法。当发现错
2、误时,在屏幕上显示错误的位置、错误类型等相关信息。根据错误信息,重新使用编辑器进行查错并修改,然后重新编译直到所有的词法和语法错误都被排除。正确编译后产生二进制目标文件,扩展名为.OBJ。连接:编译后产生的目标文件是可重定位的程序模块,但不能直接运行。连接是将目标程序、库函数和其它目标程序连接到一起,生成可执行的程序。扩展名为.EXE。运行:源代码经过编译、连接,生成可执行程序后,就可以进行程序的运行了。,1 C语言程序的开发过程- 调试,编译过程发现的错误可分为两类。一类是局部语法错误。例如,缺失了分号、逗号,或者引用了错误的数据对象。另一类是程序内部上下文关系方面的错误。例如,需要使用的数
3、据对象没有定义。连接时,也可能产生错误。例如,连接文件找不到等,具体不再叙述。源代码经过编译、连接,生成可执行程序后,还需要进行测试。测试的目的是发现程序的错误。一般通过输入一些实际数据来验证程序执行结果的正确性。如果程序执行中出现问题,或发现程序的输出结果不正确,需要设法找到出错的原因,并修改源程序,重新进行编译、连接,再测试和调试,不断反复,直到程序正确无误。,主要内容,1 C程序开发过程2 C语言程序结构与语法规则 3 C语言集成开发环境安装与使用4 程序调试(Testing)和排误(Debugging),2 C语言程序结构与语法规则,函数是C语言程序的基本组成单位。开发C语言程序,主要
4、工作就是编写各个函数。下面通过简单的例子,介绍C语言程序的基本构成和书写格式,期望初学者对C语言程序能够有一个基本的了解。,例1 在屏幕上输出一行信息 。,/*程序功能:在屏幕上输出一行信息*/#include int main ( ) printf (Welcome to C !n); return 0;,程序中说明:/* */ 为C程序的多行注释命令,在括号中间的内容不被执行,只作为程序注释;,程序的运行结果为:,例1的程序的说明,#include 是包含命令,表明该程序要使用头文件“stdio.h”中的内容;程序仅包含一个main函数。该函数的主体部分用花括号“”括起来。main函数内使
5、用了一个格式化输出的函数printf。printf是C语言系统函数库中的一个函数,其作用是按照指定格式在屏幕上输出一些信息。return 0;表示程序结束,返回给操作系统一个数值0。main()前的int表示该程序的返回值是一个整型。注意程序中的四个符号:、()、和;。注意书写格式。,C语言程序的结构,C语言程序由函数构成每一个C语言程序有且仅有一个main函数一个C语言程序总是从main函数开始执行,main函数执行完后程序结束main函数不一定在程序文本的最开头 有的程序可以根据用户需要,由设计者定义自己的main函数和若干个其他函数 ;编写C语言程序,其实就是编写一个个函数,C语言程序的
6、语法规则,C语言程序书写格式自由,一行内可以写几个语句,一个语句也可以分写在多行上在每个语句以及变量的定义和变量的声明的最后必须有一个分号C语言本身没有输入、输出语句,输入和输出用的是函数 ,C提供有许多函数,见书附录部分可以用/*/对C语言程序的任何部分作注释,例2 求两个数的平均值,/*程序功能:求两个数的平均值*/# include int main ( ) float num1, num2, average; /*定义3个实型变量*/ num1 = 97.45; num2 = 15.3; average = (num1 + num2) / 2;/*计算num1与num2的平均值*/ p
7、rintf ( The average is %fn, average ); /*输出average的值*/ return 0;,例2的程序的说明,例2中的程序,也只包含一个main函数。函数中用float关键字定义了三个实型变量num1,num2和average,然后使用“=”(赋值符号)分别给num1,num2赋值(指定值)。通过计算,用average记录了num1与num2的平均值,变量average被赋值。使用printf()函数输出结果到屏幕上,其中的“%f”是一个格式符号,表示该位置上按float类型输出一个数,见第五章。,例3 输入两个整数,求二者的最大值。,/*程序功能:求两个
8、整数中的最大值*/* imax函数的定义:求两个整数中的最大值*/# include int imax ( int x, int y ) if ( x y ) return x; /*若xy,返回x的值*/ else return y; /*否则,返回y的值*/,/*main函数的定义:输入两个整数,调用imax函数,得到两个整数的最大值*/int main ( ) int num1, num2, MaxValue;scanf ( %d%d, ,例3的程序的说明,该程序现阶段只作为了解;imax函数是用户自己定义的一个函数。程序在main中调用了imax函数,完成了最大值的选择。main函数内
9、使用了一个格式化输入函数scanf。scanf也是C语言系统函数库中的一个函数,其作用是按照指定格式在屏幕上输入一些数据。其中的“%d”是一个格式符号,表示该位置上对应一个十进制整型数。ifelse结构是一个选择语句。,主要内容,1 C程序开发过程2 C语言程序结构与语法规则 3 C语言集成开发环境安装与使用4 程序调试(Testing)和排误(Debugging),3 C语言集成开发环境安装与使用,C语言集成开发环境(IDE),“集成式程序开发环境”(Integrated Development Environment,IDE),把编程过程中需要使用的所有支持软件都集成在一起,统一地进行管理
10、和使用。,C语言集成开发环境(IDE)介绍,DEV CPP(DEV C+5.0)VC+6.0(Visual Studio C+6.0)Turbo C2.0/3.0GCC(Linux下常用的C编译器,略),Dev CPP开发环境简介,Dev-CPP是一个Windows下的C和C+程序的集成开发环境。它使用MingW32/GCC编译器,遵循C/C+标准。开发环境包括多页面窗口、工程编辑器以及调试器等,在工程编辑器中集合了编辑器、编译器、连接程序和执行程序,提供高亮度语法显示,以减少编辑错误,还有完善的调试功能,能够适合初学者与编程高手的不同需求,是学习C或C+的首选开发工具!多国语言版中包含简繁体
11、中文语言界面及技巧提示,还有英语、俄语、法语、德语、意大利语等二十多个国家和地区语言提供选择。Dev-CPP是一款免费的软件,它的IDE界面由Delphi编写,速度不错,而且简单明了,可以是Visual Studio 的一个简易替代品。,安装Dev C+5.0,推荐版本:Dev C+ 4.9.9.2(也称Dev C+ 5)安装程序WY_DEVCPP_5B0905_skycn.exe安装过程:安装过程很简单,一路Next就可以了。最后有一步选择语言,记得选Chinese(中文) 。,Dev-CPP安装后的文件,选择中文界面,点击菜单栏的Tools-Environment Options,如下左图
12、。在弹出的对话框中单击标签Interface(如上右图),然后在右边的Language选项中选择Chinese,确定以后语言就变成简体中文了。不过在确定之前推荐大家把No splash screen on startup前面的勾打上,中文意思是不显示启动界面,这样可以在启动Dev cpp的时候快一些。,Dev CPP的工作界面,工作界面如图所示,,工程管理,状态条,编辑区,在Dev C+中建立源代码文件,点击“文件”-新建,选“源代码”,输入代码,并为文件起名并保存。,运行与调试,编译,编译运行,运行,调试,全部重新编译,运行菜单,运行工具栏,调试菜单,ctrl+F9,ctrl+F10,F9,
13、ctrl+F11,F8,注意事项,1、写完C程序后运行时窗口一闪而过。解决办法是在main函数的return 0之前添加一句 system(“pause”); 来中断程序。system(“pause”)将参数串作为命令传给操作系统的命令处理程序。2、如果你是写C程序,请保存代码的时候一定选择保存类型为.c文件,否则你添加的system(“pause”);可能会提示找不到头文件,因为system函数定义在头文件中。3、快捷键F9可以一次性执行编译+运行指令,快捷方便。4、程序运行后陷入死循环,可以使用Ctrl+C键中断程序执行。5、CMD(就是那个黑框)可以使用鼠标右键进行复制、粘贴动作,自己研
14、究一下,不用总是把输入数据一个一个往里输.,那不累死.。,出现错误、原因和修改方法(1),rintf undeclared (first use this function) 错误原因:没有包含函数库stdio.h修改如下:在函数头包含:#include expected ; before “错误原因:在“”前缺“;”修改如下:Dev C+中编译后(ctrl+F9)后,无法看到运行结果怎么办?答:加一句: system(“Pause”);/所需头文件为stdlib.h,出现错误、原因和修改方法(2),conflicting declaration int m33 原因:有一个变量m和数组m33
15、同名。修改:给其中一个改名。stray 161 in program 原因:出现该错误的行中存在非半角英文字符。修改:改为半角字符。,C语言集成开发环境(IDE)介绍,DEV CPP(DEV C+5.0)VC+6.0(Visual Studio C+6.0)Turbo C2.0/3.0GCC(Linux下常用的C编译器,略),Visual C+简介,VC+是Mircorsoft公司以C+为基础开发的可视化集成开发工具。Microsoft Visual C+ 6.0版本,微软公司1998年6月29日发布,是世界上最流行的C+开发工具,同时也是Microsoft Visual Studio(tm)
16、 6.0开发系统的成员之一。Visual C+ 6.0为不断增长的C+开发产业带来了一系列提高生产力的新功能,这些新功能能够在不牺牲Visual C+所特有的强大功能与性能的同时,提高程序的编写速度。另外,Visual C+ 6.0还将提供更好的对Web与企业开发的支持。Visual C+中加入的IntelliSense(r)技术能够使开发人员编写代码的工作变得更快捷和更容易,新的Edit和Continue调试功能能够使开发人员做到以前完全不可能做到的事情,即在不离开调试器就可以对代码进行编辑,从而大大缩短了程序的开发时间。,用VC+建立工程-1,点击文件-新建,选择“工程”选项卡,选定工程类
17、型为“Win32 Console Application”,安装步骤略,用VC+建立工程-2,选择建立的工程为“空工程”,用VC+建立工程-3,建好的工程如下图所示:,用VC+建立工程-4 建立cpp文件,选择文件-新建,向工程中添加源文件(*.cpp),search.cpp,输入代码的cpp文件,用VC+建立工程-5 建立h文件(可省略),选择文件-新建,向工程中添加头文件(*.h),可省略。,search.h,输入源代码的头文件,VC+6.0中如何运行程序,Build菜单-compile (Ctrl+F7) -build (F7) -execute (Ctrl+F5),编译,运行,链接,C
18、语言集成开发环境(IDE)介绍,DEV CPP(DEV C+5.0)VC+6.0(Visual Studio C+6.0)Turbo C2.0/3.0GCC(Linux下常用的C编译器,略),TC2.0,Turbo C -Borland 公司产品,目前主要用于上机教学,主菜单,编辑区,参考行,信息窗口,(1)建立Turbo C V2.0的环境,下载拷贝TC软件,该软件为DOS环境下软件,在WINDOWS下可以在DOS模拟环境下使用。在硬盘上建立软件的文件夹,本例中在E:盘上建立了TC文件夹。将Turbo C V2.0的软件拷贝到E:TC下。执行E:TC下的TC.EXE命令,进入TC工具。界面见
19、下页:,Turbo C V2.0的界面,下载,45,File文件操作Edit编辑Run运行Compile编译Project项目文件Option选项Debug调试Break/watch中断/观察,TC中各菜单命令的含义,F10; Alt加上某项中第一个字母(即大写字母),就可进入该项的子菜单中,TC中各子菜单命令,TC中环境设置注意事项,48,(2)编辑 C 语言源文件,TC工具基本上使用键盘操作!菜单File有多个命令,用上下光标键和可以选择各个命令。,若选择New,表示开始编写一个新的源程序,文件名为默认文件名:Noname.c,此时可以输入你的源程序内容;,建议另取一个新的文件名,编译前进
20、行保存!,换名保存命令使用Write to,49,若选择Load,表示装入一个源程序,屏幕上又提示你输入文件名:,若输入ex01.c,系统将查找当前目录有没有此文件。若存在将打开此文件,此时你可以重新编辑这个源程序的内容;若没有此文件,则系统会建立一个以指定的名字命名的新的源程序,此时可以输入源程序的内容。,50,在进行编译之前,需要先把TC的编译路径设置好,安装后只进行一次即可!,如图所示,使用光标键进入Options菜单命令(也可以使用快捷命令Alt+O);在命令中选择Directories命令,出现图示的窗口;可以看到显示的路径与所建立的E:TC不同。将图中的E:TURBOC2均修改为E
21、:TC;方法见下述。,51,先使用光标键选中“Include directories:”条目,按回车键,出现图示画面,将图中的E:TURBOC2修改为E:TC;再按回车键完成修改,结果见图。,52,以同样的操作完成其他两个条目的修改,结果见图。注意修改的路径一定得与自己实际情况相符!,53,按ESC键一次,关闭该窗口。使用光标键选中“Save options”条目,见左图示。(若不慎关闭了该界面,可以再进入操作。),按回车键打开该命令窗口,见右图示;将路径修改为“E:TCTCCONFIGTC”。然后按回车键出现下页图示。注意修改的路径一定得与自己实际情况相符!,54,在下图所示窗口中键入“Y”
22、键,关闭该窗口,完成设置!进行上述正确的设置后,就可以开始编译源程序了!,55,(3)编译源程序,建议编译前进行保存!,56,编译信息框,若程序中有语法上的错误,编译将通不过,此时则在Message窗口中提示语法上有错误的行号和错误原因,按F6你可以重新修改源程序。,57,若程序中有库函数不存在等连接上的错误时,在Message窗口中仍将提示错误原因,,连接信息框,58,(4)执行程序(快捷命令Ctrl+F9),59,但若程序中有语法上的错误,编译将通不过,此时则在Message窗口中提示语法上有错误的行号和错误原因,按F6你可以重新修改源程序;若程序中有库函数不存在等连接上的错误时,在Mes
23、sage窗口中仍将提示错误原因,此时程序还不能运行;若程序没有任何错误的话,即编译和连接都通过了,Run命令将执行此程序。你可以用Alt+F5命令来查看程序的运行结果,再按任意键又返回编辑状态。,命令Run将对源程序同时进行编译、连接和运行。,60,(5)存盘、退出,菜单File中的命令Save将以原文件名保存,命令Write to允许你给源程序另起一个文件名保存。若要继续编写下一个源程序,可以重复上述过程。菜单File中的命令Quit将退出Turbo C环境。,61,操作常用键,F9 Ctrl + F9F6ALT+F5,编译 、链接 程序 运行程序窗口切换,可在编辑窗口和信息窗口进行切换查看
24、运行结果,注意使用帮助键F1来学习操作命令!,主要内容,1 C程序开发过程2 C语言程序结构与语法规则 3 C语言集成开发环境安装与使用4 程序调试(Testing)和排误(Debugging),4 程序调试(Testing)和排误(Debugging),关于Debugging这个词的来历,排除错误:消除自己写在程序里的错误。也就是排除自己在程序设计过程中所犯的错误,,程序里错误的分类:,静态错误:程序本身在书写形式上某些方面不符合程序语言的要求。动态错误:程序执行中出现的问题或者是计算的结果不符合设计的要求。,4.1 程序加工,有关错误的排除(1),1、编译程序能够发现的错误,(1)局部的语
25、法错误【经验】排除程序错误的基本原则是:每次编译之后要集中精力排除掉编译程序发现的第一个错误。,(2)程序里上下文关系方面的错误,(3)关于警告(Warning):编译程序还进行一些超出语言定义范围的检查。【经验】对于警告信息绝不可掉以轻心,警告常常是隐藏较深的实际错误,对于它们必须认真地一个个弄清原因。,“连接错误”都是关于目标模块之间,或者目标模块与程序库、运行系统之间地关联方面的问题。“连接错误”属于比较容易解决的一类错误。,2、连接程序能够发现的错误,4.1 程序加工,有关错误的排除(2),4.2 程序调试,有关错误的问题,1、程序在执行中违反了系统环境的基本要求,试图执行非法操作。,
26、2、死循环:由于编写错误,程序在执行中进入某种不能结束的状态。,3、动态执行错误:程序在执行中出现了某种错误情况,无法继续执行而停止。,4、语义错误:程序能够正常执行,正常结束,并不出现错误,但是执行中产生地效果却不合乎要求,结果不正确。,4.3 程序的开发过程,分析问题,编制程序,编 译,连 接,调试运行,完成,调试运行中发现程序编写有错误,修改源程序,编译中发现错误,转回修改源程序,连接中发现错误,转回修改源程序,调试运行中发现问题分析本身有错误,重新分析问题,4.4 动态运行错误的排除,“动态运行错误”是在程序执行中出现的错误。,首先分析程序本身,设法确定问题的根源。如果无法直接确定,就
27、需要采用动态检查的方式。,动态错误检查的基本方法是检查程序执行的中间过程。,排除“动态运行错误”的步骤:,4.5 动态错误检查的方法,(1)追踪:对一个程序进行追踪,是指在有控制的情况下执行程序。例如要求程序以一个语句一个语句的方式执行(单步执行)。,(2)监视:是指在程序追踪过程中不断地关注程序里某些变量值的变化情况。,(3)设置断点:是指在程序追踪之前,可以在程序里标出一些位置,要求程序在执行中每到达这个位置时就停下来,等待检查。程序在断点停止后,可以按照命令继续执行,或者从执行状态退出来。,(4)中断执行:在调试执行中可以给程序发一个中断命令,程序接到中断命令后就会停在当时的执行点,但还处在执行状态中。,总结,理解C开发过程各个阶段使用IDE工具进行开发的操作:启动TC 、编辑、编译、连接、运行并查看结果深刻理解各个操作之间的关系,以及操作后生成的文件的作用熟练掌握调试C程序的操作过程,