把程序写成可检查的样子
这一课只练一件事:建立“先看报错、再改写法、再用小数据验证”的工作流。完成四个小任务:分清 、 和 ,定位一处语法错,再用小数据和 检查。
任务 1:给现象选对错误类型
程序出问题时,先问:它停在哪一步?是编译器拒绝翻译;是已经编译成功但中途停住;是能跑完但结果不对。点不认识的词可看基础解释。
必会:能复述三类错误。和 帮你更快看懂代码,但 C++ 不靠缩进来决定对错。这里不会在浏览器里运行 C++,只练习分类。
少写分号,编译器直接拒绝还没开始运行 · 必会
程序编译成功,却在除以 0 时停住中途崩溃 · 必会
任务 2:定位一处语法错
下面这段代码还没开始运行。报错写着 expected ';'。按顺序走三步:先读报错,再点到 cout << n 那一行,最后确认这是 。这里不会在浏览器里运行 C++。
必会:能指出少写分号的那一行。边界:乱看起来难看,但编译器主要卡在分号,不靠空格决定对错。
- int main() {
- cout << n
- return 0;
- }
定位对了。现在亲手把这个分号补上:下面是只读脚手架,只留一空给你敲键盘。
- cout << n
cout << n;
任务 3:用小数据和分段输出检查
程序能跑完但结果不对,这是 。建议掌握:先用 n = 1 这种最小数据,再用 打印中间值。gdb 是拓展,现在不用当硬门槛。
必会 / 建议掌握 / 拓展:必会是分清三类错误并修好语法。建议掌握是先造 n = 1,再 cout << n 看中间值。gdb 是拓展,现在不用。
- int n = 1; // 先用最小数据,不要一上来就很大
- cout << n; // 分段输出:先确认读到了什么
- // 查完再删掉这些临时输出
- // gdb 是拓展:现在先会读报错和打印中间值
先选出建议掌握的检查顺序:
再选出建议掌握的“看见中间值”:
任务 4:随机小测,看看你是否真的懂了
每次从本课题库抽出三道不同的选择题。题目与解析已通过校验,答完后看解析,不要只看分数;拿不准就回到对应任务再看一遍。