导言:
今天也给大家介绍一些调试技巧
1.如何写出好(易于调试)的代码
1.1标准:
1.2推荐技巧
1.2.1assert()//断言
用assert代替if语句
提示:assert是宏,不是函数
需要包含的头文件<assert.h>
assert(表达式)
如果表达式为假,程序就会报错:”断言失败“
如:assert(dest != NULL);
提示:
a 在debug版本中,if在任何情况下都会执行,浪费时间
在release版本,assert语句会自动优化掉,所以assert更好
b strcpy函数不考虑目标空间的大小,它只会执行,一旦目标空间过小,程序能编译,只是会崩溃
1.2.2const
1.2.2.1const修饰变量
const位于*的右边
概念:
const修饰的变量,是在语法层面限制了const修改,即无法再改变
警告:
如果想改变的话,可以把其地址取出来,再通过解引用操作改变它。虽然这么做能实现目的,但这是违法操作。
1.2.2.2const修饰指针
const位于的左边
限制的是p,即p指向的对象
此时无法改变p指向的对象
关于const的使用的题目可以看我的另一篇文章中的第三题
常见错误
程序运行过程图解:
2.1编译型错误(语法错误)
最好修改的代码。
双击错误提示信息即可找到错误位置
2.2链接型(LNK)错误
格式:“无法解析的…………”
a 头文件没包含
b 符号名写错了
c 没有这个符号
2.3运行时错误
只能借助于调试解决
结语
调试的相关技巧和方法到这里就结束了,我们下次见。