一、调试
1、调试(Debug):又称除错,是发现和减少计算机程序和电子仪器中程序错误的一个过程
2、调试的步骤:
·发现程序错误的存在
·以隔离(将代码分成一块一块)、消除等方式对错误进行定位
·确定错误产生的原因
·提出纠正错误的解决办法
·对程序错误予以改正
3、Debug和Release
Debug:调试版本,包含调试信息,便于程序员调试程序
Release:发布版本,进行了各种优化,便于用户使用
Debug和Release的反汇编:
二、Windows环境调试
1、环境准备
2、快捷键
3、调试时查看当前信息
查看临时变量的值
查看内存信息
查看调用堆栈
查看汇编信息
方法一
:
方法二:鼠标右击
查看寄存器信息
三、如何写出易于调试的代码
1、优秀的代码
·效率高
·可读性高
·可维护性高
·可扩展性高
·注释清晰
·文档齐全
2、常见的coding技巧
·使用assert
·尽量使用const
·养成良好的编码风格
·添加注释
·总结编码陷阱
模拟实现库函数:strcpy
#include<stdio.h>
#include<assert.h>
char* my_strcpy(char* dest, const char* src)
{
assert(dest != NULL);
assert(src != NULL);
char *ret = dest;
while (*dest++ = *src++)
{
;
}
return ret;
}
int main()
{
char arr[20];
my_strcpy(arr, "hello world");
printf("%s\n", arr);
system("pause");
return 0;
}
注意:
·参数的设计
·返回值类型
·assert的使用
·参数部分const使用
·注释的添加
四、编程常见的错误分类
1、编译型错误
2、链接型错误:一般是标识符名不存在或拼写错误
3、运行时错误:借助调试,逐步定位