一.优秀的代码“
1.代码运行正常
2.bug很少
3.效率高
4.可读性高
5.可维护性高
6.注释清晰
7.文档齐全
二.常见的coding(编码)技巧
1.使用assert
2.尽量用const
3.养成良好的编码风格
4.添加必要的注释
5.避免编码的陷阱
三.断言(assert)
assert(表达式);
assert中可以放一个表达式,如果表达式的结果为假,就报错,如果为真就什么都不发生
assert在Release版本中会优化掉
四.const
关键字const用来定义常量,如果一个变量被const修饰,那么它的值就不能再被改变
const修饰指针变量的时候
1.放在的左边
比如const intp,这时*p(也就是指针指向的变量不能被改了),而p(指针变量本身还可以改)
*p=20 //err
p=&n //ok
2.在右边
比如int const p,这时p可以改,而*p不能被修改了
*p=20 //ok
p=&n //err
五.优秀代码示例
模拟一个strcpy函数(把一个字符串复制粘贴到另外一个字符串上)
strcpy函数返回的是目标函数的起始地址
实用调试技巧
一.调试是什么
调试(英文:Debugging/Debug),又称除错,是发现和减少计算机程序或电子仪器设备中程序错误的一个过程
二.调试的基本步骤
1.发现程序错误的存在
程序员自己/测试人员/用户
2.以隔离,消除等方式对错误进行定位
3.确定错误产生的原因
4.提出纠正错误的解决方法
5.对程序错误予以改正,重新测试
四.Windows环境调试介绍
linux开发环境调试工具是gdb
1.调试环境前的准备
在环境中选择debug选项,才能正常使代码正常调试
2.Debug和Release的介绍:
Debug通常称为调试版本,它包含调试信息,并且不做任何优化,便于程序员调试程序
Release称为发布版本,它往往进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好的使用
3.学会快捷键
断点:程序停止处
遇到函数时,逐语句能进入函数内部,而逐过程不行
4.查看程序当前的信息
查看临时变量的值
监视可以看到临时变量的值
自动窗口和局部变量会自动显示,无法改变
若数组传参到函数时无法看到数组的每一项,这时数组名+,加一个数字就能看到数组中的几项
内存:输入一个地址,就能显示这个地址中的东西
以16进制展示,一列为一个字节
反汇编:看到c语言代码翻译出来的代码语言
调用堆栈:看得到函数的调用关系