关闭

关闭

封号提示

内容

首页 VC++6.0环境下调试c语言代码的方法和步骤

VC++6.0环境下调试c语言代码的方法和步骤

VC++6.0环境下调试c语言代码的方法和步骤

上传者: 韩Sandy 2017-03-20 评分 5 0 161 22 731 暂无简介 简介 举报

简介:本文档为《VC++6docx》,可适用于IT/计算机领域,主题内容包含VC环境下调试c语言代码的方法和步骤  下文将为大家带来VC环境下调试c语言代码的方法和步骤欢迎参考学习!更多内容请关注网!  程序四步开发步骤  符等。

VC环境下调试c语言代码的方法和步骤  下文将为大家带来VC环境下调试c语言代码的方法和步骤欢迎参考学习!更多内容请关注网!  程序四步开发步骤  ()编辑。可以用任何一种编辑软件将在纸上编写好的C语言程序输入计算机并将C语言源程序文件*c以纯文本文件形式保存在计算机的磁盘上(不能设置字体、字号等)。  ()编译。编译过程使用C语言编译程序将编辑好的源程序文件“*c”翻译成二进制目标代码文件“*obj”。编译程序对源程序逐句检查语法错误发现错误后不仅会显示错误的位置(行号)还会告知错误类型信息。我们需要再次回到编辑软件修改源程序的错误然后再进行编译直至排除所有语法和语义错误。  ()连接。程序编译后产生的目标文件是可重定位的程序模块不能直接运行。连接将编译生成的各个目标程序模块和系统或第三方提供的库函数“*lib”连接在一起生成可以脱离开发环境、直接在下运行的可执行文件“*exe”。  ()运行程序。如果经过测试运行可执行文件达到预期设计目的这个C语言程序的开发工作便到此完成了。如果运行出错这说明程序处理的逻辑存在问题需要再次回到编辑环境针对程序出现的逻辑错误进一步检查、修改源程序重复编辑编译连接运行的过程直到取得预期结果为止。  VisualC开发环境介绍  VisualC(以后简称VC)是Microsoft公司推出的可视化开发环境DeveloperStudio下的一个组件为我们提供了一个集程序创建、编辑、编译、调试等诸多工作于一体的集成开发环境(IDE)。VC集成开发环境功能强大不仅提供了大量的向导(Wizard)还有完备的帮助功能(MSDN)。所以初学者学习C语言编程并不需要全面了解开发环境的全部功能。我们可以在安装VC时选择完全安装MSDN然后在遇到问题时再去查阅MSDN中的相关说明。通过“开始”菜单或桌面快捷方式启动VisualC进入集成开发环境如图所示。  图VisualC界面  跟大多数的Windows应用程序一样VisualC最上面是菜单然后是工具栏中央是工作区(左侧窗口是项目工作区C程序员可以在ClassView页的Globals全局选项里查看到正在开发的全局变量和全局函数右侧窗口是编辑窗口可以同时对多个文挡进行编辑)。最下面状态栏上面的窗口是输出窗口主要用于显示编译、连接信息和错误提示我们可以双击错误提示行VC会在编辑窗口内打开出错代码所在的源程序文件并将光标快速定位到出错行上。  在编辑窗口内输入、编辑程序源代码时源代码会显示"语法着色"。在缺省情况下代码为黑色夹以绿色的注释和蓝色的关键字(指VC所保留的public、private、new和int等等)。我们还可以通过Tools菜单下的Options对话框中的Format选项卡进一步设置指定颜色。  项目  开发一个应用程序往往会有很多源程序文件、菜单、图标、图片等资源VC通过“项目”管理上述资源。所以在开始开发C程序时我们就要在一个指定文件夹内创建一个以DSW为扩展名的项目工作区文件包含项目中所有文件的名称、文件所在目录、编译器和连接器的选项以及项目工作的其他信息此外还有以DSP为扩展名的项目记录文件以OPT为扩展名的工作区选项文件(包含DeveloperStudio的所有个人设置包括颜色、字体、工具栏、哪个文件被打开以及MDI窗口如何被定位和最新调试中的断点)等。在打开项目工作区文件时其他文件随即会自动打开。在此文件夹下还会创建Res(资源)、Debug(调试)、Release(发行)等子文件夹。  编辑  在编辑窗口打开、浏览文件、输入、修改、复制、剪切、粘贴、查找、替换、撤销等操作可以通过菜单完成也可以通过工具栏按钮完成这些与Word之类的windows编辑器用法完全相同这里就不再重复叙述了。  辅助  VC不仅提供了“语法着色”帮助我们阅读程序还可以通过一些快捷键检查常见的括号不匹配错误。MSDN也可以在编辑过程中提示存在的变量名、函数名。很多程序员借助类似VisualAssistX的工具辅助开发减少程序出错的可能性。  开发C程序  开发单个C语言程序  创建一个工作文件夹。  由于开发过程会产生一系列文件建议每开发一个新的C程序都创建一个工作文件夹。还可以将所有工作文件夹集中到一起如E:LXHEX、E:LXHEX等。  启动VisualC。  新建一个C语言源程序。  选择菜单:File下的New菜单项出现如图所示new(新建)对话框。  图选择菜单File下的New菜单项  选择Files标签下的CSourceFile在“E:LXHEG”文件夹中创建C程序:egc如图所示。  图Files标签  输入、编辑源程序。  注意不要输入中文标点符号要及时按CtrlS保存文件如图所示。  图输入源程序  编译、连接。  点击“BuildMiniBar”工具栏上的“Build”按钮进行编译、连接。也可以选择菜单Build下的Build(F)菜单项或RebuildAll菜单项。更简捷的方法是直接按F功能键。VisualC将提示创建默认工作区如图所示。  图创建默认工作区  点击“是”按钮。如果编译完全成功会显示"error(s),warning(s)"。如果出现语法错误则要返回修改源程序。然后再进行编译直至排除所有错误。  运行  点击“BuildMiniBar”工具栏上的“ExecuteProgram”按钮运行程序。也可以选择菜单Build下的Executeegexe菜单项。更简捷的方法是直接按功能键CtrlF运行程序。若运行结果正确则C语言程序的开发工作到此完成。否则要针对程序出现的逻辑错误返回修改源程序重复编译连接运行的过程直到取得预期结果为止。  关闭  如果不退出VisualC接着开发下一个C程序需要先选择菜单File下的closeworkspace菜单项关闭当前工作区然后再按照步骤开发下一个C程序  添加多个C语言源程序  在用C语言开发应用程序时往往会使用多个C语言源程序。  现有C语言源程序文件“sayhelloc”:  #include  voidsayhello(void)  {  printf("hellon")  }  将其添加到“egc”的步骤如下:首先打开“egdsw”点击项目工作区ClassView页的Globals选项选择菜单Project下的“AddToProject”菜单项的“Files……”  图添加多个源程序文件  然后在“InsertFilesintoProject”对话框中选取“sayhelloc”:  图选择欲添加的源程序文件  再在main()函数中添加子函数说明和调用:  图添加子函数说明和调用  程序运行结果如图所示:  图程序运行结果  调试C程序  初学C语言程序设计往往一看到自己编的程序出现错误就不知所措了。有些同学上机时只要程序能够顺利运行就认为大功告成根本没想到程序还存在某些隐患。要想不犯或少犯错误就需要了解C语言程序设计的错误类型和纠正方法。C语言程序设计的错误可分为语法错误、连接错误、逻辑错误和运行错误。  语法错误:在编写程序时违反了C语言的语法规定。语法不正确、关键词拼错、标点漏写、数据运算类型不匹配、括号不配对等都属于语法错误在进入程序编译阶段编译系统会给出出错行和相应“出错信息”。我们可以双击错误提示行将光标快速定位到出错代码所在的出错行上。根据错误提示修改源程序排除错误。  连接错误:如果使用了错误的函数调用比如书写了错误的函数名或不存在的函数名编译系统在对其进行连接时便会发现这一错误。纠正方法同。  逻辑错误:虽然程序不存在上述两种错误但程序运行结果就是与预期效果不符。逻辑错误往往是因为程序采用的算法有问题或编写的程序逻辑与算法不完全吻合。逻辑错误比语法错误更难排除需要程序员对程序逐步调试检测循环、分支调用是否正确变量值是否按照预期产生变化。  运行错误:程序不存在上述错误但运行结果时对时错。运行错误往往是由于程序的容错性不高可能在设计时仅考虑了一部分数据的情况对于其他数据就不能适用了。例如打开文件时没有检测打开是否成功就开始对文件进行读写结果程序运行时如果文件能够顺利打开程序运行正确反之则程序运行出错。要避免这种类型的错误需要对程序反复测试完备算法使程序能够适应各种情况的数据。  为了方便程序员排除程序中的逻辑错误VC提供了强大的调试功能。每当我们创建一个新的VC工程项目时默认状态就是Debug(调试)版本。调试版本会执行编译命令DDEBUG将头文件的调试语句ifdef分支代码添加到可执行文件中同时加入的调试信息可以让开发人员观察变量单步执行程序。由于调试版本包含了大量信息所以生成的Debug版本可执行文件容量会远远大于Release(发行)版本。  设置断点  VC可以在程序中设置断点跟踪程序实际执行流程。设置断点后可以按“F”功能键启动Debug模式程序会在断点处停止。我们可以接着单步执行程序观察各变量的值如何变化确认程序是否按照设想的方式运行。设置断点的方法是:将光标停在要被暂停的那一行选择“BuildMiniBar”工具栏按钮“InsertRemoveBreakpoint(F)”按钮添加断点如图所示断点所在代码行的最左边出现了一个深红色的实心圆点这表示断点设置成功。  图设置断点  如果该行已经设置了断点那么再次按“F”功能键会清除该断点。  调试命令  我们也可以在VC“Build”(组建)菜单下的“StartDebug”(开始调试)中点击Go(F)命令进入调试状态Build菜单自动变成Debug菜单提供以下专用的调试命令:  Go(F)从当前语句开始运行程序直到程序结束或断点处。  StepInto(F)单步执行下条语句并跟踪遇到的函数。  StepOver(F)单步执行(跳过所调用的函数)  RuntoCursor(CtrlF)运行程序到光标所在的代码行。  Stepout(ShiftF)执行函数调用外的语句并终止在函数调用语句处。  StopDebugging(ShiftF)停止调试返回正常的编辑状态  必须在运行程序时用Go命令(而不是Execute)才能启动调试模式。在调试模式下程序停止在某条语句该条语句左边就会出现一个黄色的小箭头。我们随时中断程序、单步执行、查看变量、检查调用情况。比如按“F”功能键进入调试模式程序运行到断点处暂停不断按“F”功能键接着一行一行地执行程序直到程序运行结束。  需要说明的是如果希望能一句一句地单步调试程序在编写程序时就必须一行只写一条语句。  察看变量  单步调试程序的过程中我们可以在下方的Variables(变量)子窗口和Watch(监视)子窗口中动态地察看变量的值如图所示。Variables子窗口中自动显示当前运行上下文中的各个变量的值变量而Watch子窗口内只显示在此Watch子窗口输入的变量或表达式的值。随着程序的逐步运行也可以直接用鼠标指向程序中变量查看其值。例如在图中我们可以清楚地看到程序已经为自动型变量first、second、big分配了内存但它们的初始值是随机的。  图察看变量  Variables子窗口有个选项卡:Auto、Locals和This。  Auto选项卡:显示出当前语句和上一条语句使用的变量它还显示使用Stepover或Stepout命令后函数的返回值。  Locals选项卡:显示出当前函数使用的局部变量。  This选项卡:显示出由This所指向的对象(C语言不用this)。  如果变量较多自动显示的Variables窗口难以查看时还可以在右边的Watch子窗口中添加想要监控的变量名。例如图在Watch子窗口中添加了变量“first”。我们还可以直接将变量拖动到Watch子窗口的空白Name框中。添加结束后该变量的值会被显示出来。并且随着单步调试的进行会看到变量first的值逐渐变化。如果各变量的值按照设想的方式逐渐变化程序运行结果无误本次开发就顺利结束了。如果发现各变量值的变化和设想的不一致说明程序存在逻辑错误那就需要停止调试返回编辑窗口查错并修改程序。  查看内存  数组和指针指向了一段连续的内存中的若干个数据。可以使用memory功能显示数组和指针指向的连续内存中的内容。在Debug工具条上点memory按钮弹出一个对话框在其中输入数组或指针的地址就可以显示该地址指向的内存的内容。如图所示:  图察看内存

精彩专题

职业精品

上传我的资料

热门资料

资料评价:

/ 7
所需积分:0 立即下载

意见
反馈

返回
顶部

Q