资源预览内容
第1页 / 共77页
第2页 / 共77页
第3页 / 共77页
第4页 / 共77页
第5页 / 共77页
第6页 / 共77页
第7页 / 共77页
第8页 / 共77页
第9页 / 共77页
第10页 / 共77页
亲,该文档总共77页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
VC6.0 IDEVC6.0 IDE的使用和程序调试技巧的使用和程序调试技巧用用C C或或C+C+进行项目开发的过程进行项目开发的过程编辑编辑编辑编辑编译编译编译编译链接链接链接链接调试与测试调试与测试调试与测试调试与测试事半功倍事半功倍事半功倍事半功倍 工欲善其事,工欲善其事,工欲善其事,工欲善其事,必先利其器必先利其器必先利其器必先利其器VC+ 6.0C+ 6.0集成开发环境简介集成开发环境简介n 是是Windows环境下最主要的应用开发系统之一环境下最主要的应用开发系统之一n 是是C+语言的集成开发环境语言的集成开发环境n 与与Win32紧密相连紧密相连n 强大的调试功能为大型复杂软件的开发提供了有效强大的调试功能为大型复杂软件的开发提供了有效的排错手段。的排错手段。n包含源代码编辑器、资源编辑器、包含源代码编辑器、资源编辑器、C/C+编译器、编译器、链接器、调试器,以及一套联机文档。使用链接器、调试器,以及一套联机文档。使用Developer Studio,可以完成创建、编辑、编译、,可以完成创建、编辑、编译、调试、运行应用程序等的各种操作。调试、运行应用程序等的各种操作。Microsoft Visual Studio 6.0 - Microsoft Visual C+ 6.0启动启动VC+演示演示在在VC启动窗口中,取消启动窗口中,取消“Tip of the Day”单击,取消对勾单击,取消对勾单击,关闭对话框单击,关闭对话框 下次启动下次启动VC+,就不会再出现就不会再出现“Tip of the Day”对话框对话框开发环境开发环境开发环境是程序员同开发环境是程序员同VC+的交互界面的交互界面通过通过它,它,可以可以创创建建工工程程文文件件编编辑辑资资源源编编译译、链链接接、调调试试编编辑辑程程序序源源代代码码7EditEdit菜单菜单FileFile菜单菜单ViewView菜单菜单Insert菜单菜单菜单简介菜单简介8ProjectProject菜单菜单BuildBuild菜单菜单ToolsTools菜单菜单WindowsWindows菜单菜单9File-New-Files(1) VC+的菜单栏的菜单栏 - FileFile菜单菜单File-New-Projects12断点作用:断点作用: 中断程序的执行过中断程序的执行过程,以便检查程序代码、程,以便检查程序代码、变量和寄存器值变量和寄存器值位置断点位置断点数据断点数据断点消息断点消息断点用来用来设置设置删除删除和和查看查看断点断点(a) Breakpoints选项选项(2) VC+的菜单栏的菜单栏 - Edit菜菜单单13位置断点位置断点通常在通常在源代码源代码的指定行的指定行、函数的开始函数的开始或或指定的内存地址处指定的内存地址处设设置置,当程序执行到指定,当程序执行到指定位置时,位置断点将中位置时,位置断点将中断程序的执行断程序的执行在位置断点中还可以设置断在位置断点中还可以设置断点条件,此时必须先指定位点条件,此时必须先指定位置,然后再设置条件断点置,然后再设置条件断点数据断点数据断点是在是在变量变量或或表达式表达式上设置,上设置,当当变量变量或或表达式表达式的的值值改变改变时,数据断时,数据断点将中断程序的执行点将中断程序的执行消息断点消息断点是在窗口是在窗口函数函数WndProc上设上设置,当接收到指定置,当接收到指定的消息时,消息断的消息时,消息断点将中断程序的执行点将中断程序的执行14(b) List Members选项选项 利用此选项,利用此选项,可减轻输入代码的工作量。如在变量名之后键入可减轻输入代码的工作量。如在变量名之后键入“.”或或“-”,系统就会自动显示所有有效的成员名供选择,系统就会自动显示所有有效的成员名供选择(c) Type Info选项选项 如果在源代码中将鼠标指针停在某一变量或函数上,那么系统将如果在源代码中将鼠标指针停在某一变量或函数上,那么系统将显示所指变量或函数等的语法显示所指变量或函数等的语法提供有效提供有效的成员名的成员名推荐使用功能推荐使用功能更加强大的更加强大的Visual Assist X插件!插件!15(d) Parameter Info选项选项 当输入代码时,若在输入函数名当输入代码时,若在输入函数名之后键入左括号,系统将显示该函数之后键入左括号,系统将显示该函数的完整原型,并用黑体显示其第一个的完整原型,并用黑体显示其第一个参数。输入第一个参数之后,接着就参数。输入第一个参数之后,接着就会出现第二个参数,依此类推会出现第二个参数,依此类推(e) Complete Word选项选项 系统自动完成当前语句其余部分的输入。如果不能自动完成,则系统自动完成当前语句其余部分的输入。如果不能自动完成,则给出适当的提示辅助用户完成给出适当的提示辅助用户完成Insert菜单菜单18 在在View菜单中可以:菜单中可以:改变窗口改变窗口改变工具栏的显示方式改变工具栏的显示方式检查源代码检查源代码激活调试等激活调试等View-ClassWizard选项选项(a) ClassWizard选项选项(3) VC+的菜单栏的菜单栏 - View菜菜单单19(b) Workspace选项选项 如果工作区没有显示或者不是处于当如果工作区没有显示或者不是处于当前状态,则选择该项将显示工作区窗口。前状态,则选择该项将显示工作区窗口。(c) Output选项选项 在在输出窗口输出窗口中显示程序建立过程中显示程序建立过程(如编如编译、链接等译、链接等)的有关信息或错误信息的有关信息或错误信息,并且并且显示调试运行时的输出结果。显示调试运行时的输出结果。21 使用使用Project可以可以创建创建、修改修改和和存储存储正在编辑的正在编辑的工程文件工程文件 工程文件工程文件组合了一个应用程序的所有源文件的组成部分。工组合了一个应用程序的所有源文件的组成部分。工程文件包含在扩展名为程文件包含在扩展名为.DSP的文件中。的文件中。(5) VC+的菜单栏的菜单栏 - Project菜单菜单22(b) Add To Project选项选项 选择该选项将打开一个选择该选项将打开一个级联子菜单级联子菜单通过级连子菜单,通过级连子菜单,可以把文件、文件可以把文件、文件夹等添加到当前工程文件中夹等添加到当前工程文件中在该子菜单中可以进行如下操作在该子菜单中可以进行如下操作:(1) New:创建新的文件;创建新的文件;(2) New Folder:插入新的文件夹;插入新的文件夹;(3) Files:插入已有文件;插入已有文件;(a) Set Active Project选项选项 设定指定的项目为工作区的活动项目设定指定的项目为工作区的活动项目24Build菜单用于编译、建立和执行应用程序菜单用于编译、建立和执行应用程序(b) Build选项选项 对最后修改过的源文件进行编译和链接对最后修改过的源文件进行编译和链接(a) Compile选项选项 只编译当前文件而不调用链接器或其它工只编译当前文件而不调用链接器或其它工具。输出窗口将显示编译过程检查出的错误或具。输出窗口将显示编译过程检查出的错误或警告信息,在错误信息处单击鼠标右键,可以警告信息,在错误信息处单击鼠标右键,可以得到错误代码的位置得到错误代码的位置(c) Rebuild All选项选项 该选项允许用户编译所有的源文件,而不管它们何时曾经被修改过该选项允许用户编译所有的源文件,而不管它们何时曾经被修改过(6) V C+的菜单栏的菜单栏-Build菜单菜单25(d) Batch Build选项选项 该选项能单步重新建立多个工程文该选项能单步重新建立多个工程文件,并允许用户指定要建立的项目类型件,并允许用户指定要建立的项目类型Win32 Release(发行版)、发行版)、Win32 Debug(调试版)。调试版)。VC提供了两种提供了两种应用程序类型应用程序类型26(e) Start Debug选项选项从当前语句开始执从当前语句开始执行程序直到遇到断行程序直到遇到断点或遇到程序结束点或遇到程序结束单步执行程序,单步执行程序,并在遇到函数调并在遇到函数调用时进入函数内用时进入函数内部再从头单步执行部再从头单步执行使程序在运行到当前光使程序在运行到当前光标所在位置时停止标所在位置时停止(相当相当于设置一个临时断点于设置一个临时断点)调试过程中直调试过程中直接进入到正在接进入到正在运行的进程中运行的进程中ToolsTools菜单菜单项目项目 nWindows应用程序应用程序n源代码、各类资源(如:菜单和对话框等源代码、各类资源(如:菜单和对话框等 )、函数库)、函数库n文件文件n源文件源文件.c/.cpp, 头文件头文件.h, 库文件库文件.lib/.dll,资源文件资源文件.rcn项目(项目(VC对项目有良好的自动维护机制)对项目有良好的自动维护机制)n文件集合(以文件夹方式管理)文件集合(以文件夹方式管理)n有效组织文件并维护各源文件之间的依赖关系有效组织文件并维护各源文件之间的依赖关系 n项目文件项目文件.dsp、项目工作区文件、项目工作区文件.dsw、项目工作区配置、项目工作区配置文件文件.opt、编译记录文件、编译记录文件.plg、资源辅助文件、资源辅助文件.aps、无、无编译浏览文件编译浏览文件.ncb等等。等等。 项目工作区项目工作区n项目工作区:项目工作区:用于描述用户当前工作状态的。用于描述用户当前工作状态的。 比如打开了哪些文件、当前输入位置在什么地方这一类的比如打开了哪些文件、当前输入位置在什么地方这一类的信息被保存在工作区文件中,它在信息被保存在工作区文件中,它在VCVC关闭的时候会自动保关闭的时候会自动保存。当用户下一次继续工作的时候,只需要打开这个工作存。当用户下一次继续工作的时候,只需要打开这个工作区文件,就可以回到上一次关闭前的状态,而不需要再费区文件,就可以回到上一次关闭前的状态,而不需要再费心思回忆上一次到底在改哪一行代码了。心思回忆上一次到底在改哪一行代码了。 项目工作区窗口对项目进行各种管理。项目工作区窗口对项目进行各种管理。 项目工作区项目工作区n项目工作区与项目项目工作区与项目 工作区与项目并不一定是一一对应的,一个工作工作区与项目并不一定是一一对应的,一个工作区中也可以包含两个或多个项目。区中也可以包含两个或多个项目。 但一般情况下,人们还是喜欢每次只在一个项但一般情况下,人们还是喜欢每次只在一个项目中进行工作,因此一个工作区中往往只有一个项目,或目中进行工作,因此一个工作区中往往只有一个项目,或者说,每个项目往往都有与之对应的工作区;者说,每个项目往往都有与之对应的工作区; 正是如此,当我们想打开一个项目的时候,常正是如此,当我们想打开一个项目的时候,常用用“打开工作区打开工作区Open WorkspaceOpen Workspace”菜单项打开这个项目文菜单项打开这个项目文件夹中的工作区文件而不是使用件夹中的工作区文件而不是使用“打开项目打开项目Open Open ProjectProject”。 项目工作区窗口项目工作区窗口nClassViewClassView页页 nFileViewFileView页页nResourceViewResourceView页页FileView页页ClassView页页File-New-Projects项目类型项目类型nWin32 Application 基于WINDOWS平台的32位开发环境开发应用程序,SDK程序。 入口函数为WinMain nWin32 Console Application 是基于DOS开发平台开发应用程序,不能使用与图形有关的函数,控制台程序。 入口函数是main n如果你编写传统的如果你编写传统的C C程序,必须建立程序,必须建立Win32 ConsoleWin32 Console程序,但程序,但VCVC里面默认的是里面默认的是Win32 ApplicationWin32 Application 。 37在工作区中添加项目:在工作区中添加项目: 用用File-Open选项可选项可打开已存在的项目;通打开已存在的项目;通过过New对话框的对话框的Projects选项卡创建新的项目,选项卡创建新的项目,并选择并选择Add to current workspace复选框。复选框。 VC以项目工作区以项目工作区的形式来组织文件、的形式来组织文件、项目和项目配置项目和项目配置 创建新的项目工作区创建新的项目工作区创建新的空工作区步骤:创建新的空工作区步骤:(a) File-New-Workspaces- 输入输入工作区名字工作区名字并指定并指定工作区目录工作区目录38项目工作区窗口简介项目工作区窗口简介 VC项目工作区由项目工作区由ClassView、ResourceView及及FileView三个三个面板组成面板组成39VC Programmers Guide:VC程序员指南。程序员指南。VC Users Guide:VC用户指南。用户指南。VC Tutorials:VC教程。教程。MFC and Templates:微软基础类库和模板参考信息。微软基础类库和模板参考信息。Languages and Libraries for VC:VC语言和库文件信息语言和库文件信息。VC帮助系统帮助系统主要提供主要提供五五个个方面内容方面内容 联机帮助联机帮助VC6.0使用实例使用实例1File-New-ProjectFile-New-Files编译成功编译成功编译成功编译成功CTRL+F7 编译编译生成工程生成工程相关文件相关文件链接成功链接成功链接成功链接成功F7 链接链接运行程序运行程序nF5 :F5 :继续运行继续运行nF10 : F10 : 单步,不进入子函数内部单步,不进入子函数内部nF11 : F11 : 单步,进入子函数内部单步,进入子函数内部nCTRL+F10: CTRL+F10: 运行到当前光标处运行到当前光标处 nSHIFT+F11:SHIFT+F11:跳出当前所在函数跳出当前所在函数 nShift F5: Shift F5: 结束调试结束调试项目配置项目配置nProject settings对话框nGeneral nDebug nC/C+ nLinkn项目类型nDebugnrelease 使用使用VC+6.0VC+6.0调试程序调试程序n调试环境的建立调试环境的建立 n调试环境的建立调试环境的建立 常用的调试手段常用的调试手段l设置断点设置断点l控制程序运行控制程序运行l查看:查看:Variable,memory, Register,堆栈堆栈设置断点设置断点59断点作用:中断程序的执断点作用:中断程序的执断点作用:中断程序的执断点作用:中断程序的执行过程,以便检查程序代行过程,以便检查程序代行过程,以便检查程序代行过程,以便检查程序代码、变量和寄存器值码、变量和寄存器值码、变量和寄存器值码、变量和寄存器值位置断点位置断点数据断点数据断点消息断点消息断点用来用来设置设置删除删除和和查看查看断点断点断点设置断点设置60位置断点位置断点通常在通常在源代码源代码的指定行的指定行、函数的开始函数的开始或或指定的内存地址处指定的内存地址处设设置置,当程序执行到指定,当程序执行到指定位置时,位置断点将中位置时,位置断点将中断程序的执行断程序的执行在位置断点中还可以设置断在位置断点中还可以设置断点条件,此时必须先指定位点条件,此时必须先指定位置,然后再设置条件断点置,然后再设置条件断点数据断点数据断点是在是在变量变量或或表达式表达式上设置,上设置,当当变量变量或或表达式表达式的的值值改变改变时,数据断时,数据断点将中断程序的执行点将中断程序的执行消息断点消息断点是在窗口是在窗口函数函数WndProc上设上设置,当接收到指定置,当接收到指定的消息时,消息断的消息时,消息断点将中断程序的执行点将中断程序的执行控制程序的运行控制程序的运行nF5 :继续运行继续运行nF10 : 单步,不进入子函数内部单步,不进入子函数内部nF11 : 单步,进入子函数内部单步,进入子函数内部nCTRL+F10: 运行到当前光标处运行到当前光标处 nSHIFT+F11:跳出当前所在函数跳出当前所在函数 nShift F5: 结束调试结束调试调试工具栏调试工具栏实例实例2 2n1:打开jiecheng项目 (双击jiecheng.dsw文件)n2:build该项目,确定程序可以运行n3:调试运行阶乘程序n4:设置断点n5:再次调试运行程序n6:使用单步执行程序到结束1:打开jiecheng项目2:Build该项目,确定程序可以运行3:调试运行阶乘程序Go4:设置断点n将鼠标停留在程序的第8行,在第8行的任意地方单击鼠标左键(第8行即“i = i*4;”)n在工具栏上选择 按钮,为第8行设置断点,以便让程序在此处暂停运行5:再次调试运行阶乘程序n注意观察,现在调试运行程序会如何?Go5:再次调试运行阶乘程序(续)程序暂停之处调试(Debug)工具:控制程序前进步伐查看程序当前状态6:使用单步执行到程序结束n设置断点以后,调试运行程序时,程序开始执行,并且运行到断点处暂停下来,此时我们有机会观察程序的运行情况,并且诊断程序目前的状态是否如我们所预期的那样。n不过我们先不着急观察程序的状态,而是来看看如何控制程序的运行,以便在我们需要的时候让程序暂停下来,并且以我们需要的方式走走停停!6:使用单步执行到程序结束n程序停下来了,如何让程序从暂停的地方继续向前执行?n方法是使用单步执行手段(Step Over)让程序向前走一步停止调试停止调试并重新启动调试单步执行当前位置熟悉调试工具栏和菜单熟悉调试工具栏和菜单(只在调试运行时出现)(只在调试运行时出现)对比调试运行时出现的调试菜单“Debug”和调试工具栏,根据图标查找对应项观察变量的值及其随程序运行观察变量的值及其随程序运行时的变化情况时的变化情况n设置断点,调试运行程序,此时程序暂停在断点处等待n选择Debug菜单,找到最后一项“Quick Watch”并点击输入想要观察的变量变量名变量的值点击Add Watch点击Add watch,看到如下画面调试观察每一步骤变量i的值n点击单步执行按钮或者菜单,程序则向前单独运行一个步骤n每向前执行一步,就会暂停下来,这样我们就有充足的时间观察所关心的变量名称n观察变量i的值的情况注意在调试过程中n断点不能设置在空白行上面n添加断点和删除断点的方法一样n一个程序中可以设置多个断点n按下F5键可以让程序从当前位置向前执行,直到遇见下一个断点或者程序结束
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号