调试工具栏中的工具可分为两部分:控制程序运行工具和设置观察窗口工具。 ① 对于控制程序运行工具,从左到右的常用按钮、功能键及功能说明依次是: ●Restart 重新执行程序,功能键是 Ctrl+Shift+F5。无论C源程序处于任何状态(编辑、运行、调试),按下此按钮均可使程序从编译开始,逐步进入调试程序状态。 ●Stop Debugging 停止程序调试,功能键是Shift+F5。当调试过程处于跟踪程序执行的状态时,按下此按钮,将停止调试程序,返回编辑状态。编辑状态下此按钮无效。 ● Show Next Statement 指示当前程序运行的语句行。 ● Step Into 单步运行并且可进入函数内部运行,功能键是F11。程序在调试过程中,按下此按钮可单步跟踪程序运行,与Stp Over按钮不同的是,该功能可进入函数内部,继续函数内部的语句行跟踪。 注意:使用此按钮时,当 位于有库函数调用的语句行,不用F11功能,以免进入库函数的汇编程序块中,取而代的是F10功能键。 ● Step Over 单步运行程序,功能键是F10。本按钮的功能类似于F11,但它不进入函数内部,它将每一条语句看作一步,包括函数调用语句。 ●Step Out 从当前函数中退出,功能键是Shift+F11。当程序运行至某个函数内部时,按下此按钮后,调试状态即从函数内部退出,返回到调用该函数的主函数的当前语句。 ●Run to Cursor 运行到当前光标位置,功能键是Ctrl+F10。当程序处于调试状态时,为了跳过某程序段,可预先将光标定位在某语句行上,按下此按钮,即可使程序直接运行到当前光标位置,从而节省了时间,加快了调试程序的步骤。 ② 对于设置观察窗口工具,其功能主要是为配合程序跟踪运行,设置一些观察点,以便定位出错的位置,从而找到出错的原因。 ● QuickWatch 快速观察表达式的值,功能键是Shift+F9。当程序运行到某个关键语句行时,你可以按下该按钮,即在屏幕上显示“QuickWatch”窗口,其中:E表达式下拉列表框中的a,是由用户输入的当前源程序中的一个数组名;V 当前值列表中的“Name”和“Value”列的值就是a数组中所有元素的元素名和元素值。
图16 c) 接下来,我们对程序作运一步调试,以找出程序出错的真正原因。 调试一个存在逻辑错误的程序,首先要确定程序中可能出现错误的大概位置。根据题意说明可确定错误存在于函数fun中。根据这一判断,我们先将光标定位在fun函数的第一条可执行的语句行上,然后,按下功能键Ctrl+F10,让程序运行到光标位置。注意:这个过程中间要进入输入屏幕状态,等待输入a和b字符串,请考生按要求输入,用回车符确认。当看到任务栏的VC图标在闪烁,请将窗口切换到VC状态,如图17所示: