第十四章
主要内容
14.1 常见错误分析
14.2 程序调试
3
§ 14.1常见错误分析
(1) 忘记定义变量。
(2) 输入输出的数据的类型与所用格式说明符不一致。
(3) 未注意int型数据的数值范围。
(4) 在输入语句 scanf中忘记使用变量的地址符。
(5) 输入数据的形式与要求不符。
(6) 误把,=,作为,等于,运算符。
(7) 语句后面漏分号。
(8) 在不该加分号的地方加了分号。
(9) 对应该有花括号的复合语句,忘记加花括号。
(10) 括号不配对。
4
§ 14.1常见错误分析
(11) 在用标识符时,忘记了大小写字母的区别。
(12) 引用数组元素时误用了圆括号。
(13) 在定义数组时,将定义的,元素个数,误认为是,可使用的最大下标值,。
(14) 对二维或多维数组的定义和引用的方法不对。
(15) 误以为数组名代表数组中全部元素。
(16) 混淆字符数组与字符指针的区别。
(17) 在引用指针变量之前没有对它赋予确定的值。
(18) switch语句的各分支中漏写 break语句。
(19) 混淆字符和字符串的表示形式。
(20) 使用自加( ++)和自减( --)运算符时出的错误。
5
§ 14.1常见错误分析
(21) 所调用的函数在调用语句之后才定义,而又在调用前未声明。
(22) 对函数声明与函数定义不匹配。
( 23) 在需要加头文件时没有用 #include命令去包含头文件。
(24) 误认为形参值的改变会影响实参的值。
(25) 函数的实参和形参类型不一致。
(26) 不同类型的指针混用。
(27) 没有注意函数参数的求值顺序。
(28) 混淆数组名与指针变量的区别。
(29) 混淆结构体类型与结构体变量的区别,对一个结构体类型赋值。
6
§ 14.1常见错误分析
(21) 所调用的函数在调用语句之后才定义,而又在调用前未声明。
(22) 对函数声明与函数定义不匹配。
( 23) 在需要加头文件时没有用 #include命令去包含头文件。
(24) 误认为形参值的改变会影响实参的值。
(25) 函数的实参和形参类型不一致。
(26) 不同类型的指针混用。
(27) 没有注意函数参数的求值顺序。
(28) 混淆数组名与指针变量的区别。
(29) 混淆结构体类型与结构体变量的区别,对一个结构体类型赋值。
(30) 使用文件时忘记打开,或打开方式与使用情况不匹配。
7
§ 14.1常见错误分析程序出错有 3种情况:
① 语法错误
② 逻辑错误
③ 运行错误
8
§ 14.2 程序调试所谓程序调试是指对程序的查错和排错。调试程序步骤:
(1)先进行人工检查,即静态检查。
(2)上机调试。
(3)在改正语法错误和,警告,后,
程序经过连接( link)就得到可执行的目标程序。运行程序,输入程序所需数据,就可得到运行结果。