C语言中错误大致分为三类
目录
一、编译型错误
这类问题最简单,往往是语法错误导致的,也比较容易解决。
如:逗号的使用,分号的添加,括号的对应,各类操作符的使用,库函数的使用格式,各类循环的使用格式,数组的初始化,等等。
如何解决:
遇到此类问题我们只需按照错误列表的提示,对应项目位置,文件位置及行号,找到错误所在,按照提示添加或修改即可,当然我们也可以双击错误列表中出现的语法错误,便可得到错误位置,再加以修改。
二、链接型错误
此类问题也比较容易解决,往往是标识符未定义引起的
如:变量、常量和宏的定义,头文件的包含,文件的引入,库函数名的拼写,自定义函数名的一致,等等
如何解决
在编写代码时我们可以双击定义的标识符,编译器便会帮你识别相同标识符并会产生颜色,可帮助我们避免错误,当编译后我们也可以通过错误列表的方式找到错误所在。
三、运行时错误
此类问题就要花费点时间去解决了,往往涉及到底层原理,数据结构等相关知识
如:指针的越界访问,栈溢出,逻辑的漏洞,未初始化的变量,数组越界,字符串溢出,重复释放内存,使用无效的指针,递归函数的限制,等等
如何解决:
此类问题就要经过不断调试及思考,一步一部判断问题所在,可借助编译器中的调试工具,如断点、监视、内存,反汇编等,并配合快捷键高效改错。
在编程中也要养成良好的编程习惯,如在定义变量时就进行初始化,避免野指针,多用const修饰变量,习惯使用assert断言,使自己的代码具有健壮性、鲁棒性