文本内容:
初学语言常见的错误C
一、编译型错误这类问题最简单,往往是语法错误导致的,也比较容易解决如逗号的使用,分号的添加,括号的对应,各类操作符的使用,库函数的使用格式,各类循环的使用格式,数组的初始化,等等如何解决遇到此类问题我们只需按照错误列表的提示,对应项目位置,文件位置及行号,找到错误所在,按照提示添加或修改即可,当然我们也可以双击错误列表中出现的语法错误,便可得到错误位置,再加以修改char arr[]=,,abcdef,,787o pintret=my_strlenarr;788printf%d\n,ret;789,790100%-e2^A0个►行789791错误列表整个解决方案▼|Oitg31lAWBQIO^J0囹+IntelliSense▼接索错误代码说明-项目文件行*E0065应输入T Projectl笔记xpp789*E0020未定义标识符ret Project1笔记xpp790GC2144语法错误门nt”的前面应有丁Projectl笔记xpp789
二、链接型错误此类问题也比较容易解决,往往是标识符未定义引起的如变量、常量和宏的定义,头文件的包含,文件的引入,库函数名的拼写,自定义函数名的一致,等等如何解决在编写代码时我们可以双击定义的标识符,编译器便会帮你识别相同标识符并会产生颜色,可帮助我们避免错误,当编译后我们也可以通过错误列表的方式找到错误所在svoid InitBoardcharboard[ROW][COL]^int row,int col{avoid DisplayBoardcharboard[ROW][COL]^int row,int col|{...}svoid PlayerMovecharboard[][COL].,int row,int col[{,,.}]avoid ComputerMovecharboard[ROW][COL]^int row,int col|{□int IsFullcharboard[ROW][COL]^int row,int colcso-ngw
三、运行时错误此类问题就要花费点时间去解决了,往往涉及到底层原理,数据结构等相关知识如指针的越界访问,栈溢出,逻辑的漏洞,未初始化的变量,数组越界,字符串溢出,重复释放内存,使用无效的指针,递归函数的限制,等等如何解决此类问题就要经过不断调试及思考,一步一部判断问题所在,可借助编译器中的调试工具,如断点、监视、内存,反汇编等,并配合快捷键高效改错在编程中也要养成良好的编程习惯,如在定义变量时就进行初始化,避免野指针,多用修const饰变量,习惯使用断言,使自己的代码具有健壮性、鲁棒性assert。