视频: Section 3 2024
有时,你的C编程指令的问题不能仅仅通过观察程序流程。不,你必须在内存中弄脏和弄脏,并在代码运行时查看变量的值。 Code:: Block的调试器允许你在程序中监视任何变量,在程序运行时向你显示变量的内容。
WHERE VARIABLES LURK
#include #include int main(){int x; int * px; PX = X; for(x = 0; x <10; x ++)printf(“%dn”,* px);返回0;}
练习 1 : 创建一个调试活动的新代码::Blocks项目。将上面的源代码复制到main中。 c文件。建立并运行。看看是否有效。
<! - 1 - >它不,或者它不应该,除非你打错了什么。有时间去调试!请执行以下步骤:
-
单击鼠标将其放置在第6行的起始处,其中声明了整数变量 x 。
-
单击调试工具栏上的运行到光标按钮。
-
单击调试Windows按钮。
-
选择手表命令。
出现手表窗口。
<! - 2 - > -
在手表窗口的第一个蓝色框中单击鼠标。
-
键入变量 x 的x并按下Enter键。
-
在下一行输入px来检查存储在px指针中的内存位置。按下Enter键。
-
在第三行输入* px来检查指针px存储的内存位置的内容。按下Enter键。
您可能会看到这些变量的值,虽然这些值是未初始化的。例如,在屏幕上,变量 x 保存值56,这是在变量被分配一个值之前随机垃圾出现在内存中的值。
直到一个变量被初始化,其内容是垃圾。
-
单击调试工具栏上的下一行按钮,直到光标位于第10行(for循环的开始处)。
由于指针px的值被分配给变量 x 的内存位置,请注意观察窗口。瞬间,您将看到一个内存地址以变量px出现,并且您看到* px变量设置等于分配给变量 x 的任何值。指针已经初始化!
-
再次点击下一行按钮。
当for循环启动时,它初始化变量 x 的值。您可以在手表窗口中看到该值以及* px的值。 px的值(变量 x 的地址)不会改变。
-
继续浏览代码,观察值的变化。
-
完成后点击停止按钮。检查内存中的变量是查看代码执行情况的另一个好方法。如果变量没有按照他们应该的方式弹出,你需要检查操纵这些变量的语句。另外,通过检查内存中的指针,可以更好地了解指针是如何工作的。