【2023最新】C语言教程
第2章 C语言概述

2.7 调试程序
- 程序的错误 → bug
- 找出并修正错误的过程 → 调试(debug)
#include<stdio.h>
int main(void){
int n , int n2, int n3;
n = 5;
n2 = n * n;
n3 = n2 * n2;
printf("n = %d, n的平方 = %d, n立方 = %d\n", n , n2, n3);
return 0;
}
2.7.1 语法错误
不遵循C 语言的规则就会犯的错误。
2.7.2 语义错误
意思上的错误。
编译器无法检测语义错误,因为这类错误并未违反C语言的规则。编译器无法了解你的真正意图,所以你只能自己找出这些错误。
2.7.3 程序状态
通过逐步跟踪程序的执行步骤,并记录每个变量,便可监视程序的状态。程序状态(program state)是在程序的执行过程中,某给定点上所有变量值的集合。它是计算机当前状态的一个快照。
- 自己模拟计算器逐步执行程序
- 在程序的关键点插入额外的打印语句
- 使用调试器debugger
【补充】DEV C++调试器的用法

以这个程序为例。
#include<stdio.h>
void test(void);
int main(void){
int n , n2, n3;
n = 5;
n2 = n * n;
n3 = n2 * n2;
test();
printf("n = %d, n的平方 = %d, n立方 = %d\n", n , n2, n3);
return 0;
}
void test(void){
printf("Hello, debbuger");
}

打开编译选项

换一个编译器配置,debug的,这里笔者选了第二个,确定

编译程序,不执行。
在理想的位置添加断点。

添加想要查看的变量

笔者这里把n、n2、n3 都加进去


启动调试

程序运行至断点处,停了下来
接下来就可以下一步了

来到test() 函数时,我们可以点击单步进入

这样就进入函数了,下一步
这个时候注意,其实我们调试的时候也打开了cmd 窗口的。方便我们观察printf() 等语句的打印情况。
这里笔者录制了一个讲解视频,附上链接,希望老铁们多多支持。
<【DEVC++如何进行程序调试】 https://www.bilibili.com/video/BV1t84y1371e/?share_source=copy_web&vd_source=415854ff1b8f03d642857b6a175f8102>

592

被折叠的 条评论
为什么被折叠?



