调试技巧(1)

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//调试技巧
//什么是bug?臭虫
//第一次被发现的导致计算机错误的飞蛾,也是第一个计算机程序错误

//调试是什么?
// 所有发生的事都一定有迹可循,
// 如果问心无愧,就不需要掩盖也没有迹象,
// 如果问心有愧,就必然需要掩盖,那就一定会有迹象,
// 迹象越多就越容易顺藤而上,这就是推理的途径。
// 顺着这条途径顺流而下就是犯罪,逆流而上,就是真相。
// 
//调试(Debug)
// 基本步骤
// 
// 发现程序错误的存在
// 1.程序员自己-自己一定解决了-少写bug
// 2.软件测试人员-测试软件-多测试出bug
// 3.用户-严重!
// 以隔离、消除等方式对错误进行定位
// 确定错误产生的原因
// 提出纠正错误的解决方法
// 对程序予以改正,重新调试 
//
//Debug调试版本-包含调试信息,不做任何优化,便于程序员调试
//Release发布版本-进行了各种优化,使得代码大小和运行速度都是最优的,以便用户很好的使用


//windows环境调试
// 
// 1.调试环境准备-Debug
//
// 2.学会快捷键
//F5-启动程序  
//F9-设置和取消断点
//断点前的代码按F5直接就运行完了,调试效率就提高了
//F10-逐过程一步一步往下   
//F11-逐语句-比F10更精细-可以进入到函数内部
//CTEL+F5
//Fn-辅助功能键
//CTRL+K+C-注释
//CTRL+K=U-取消注释
//
//3.调试的时候查看程序的当前信息
//调试窗口
//断点
//监视
//自动窗口
//局部变量
//内存窗口 显示从左往右依次是地址 内存数据 翻译文本
//可以调整列数为4,因为是16进制,每一个数表示一个字节,4个字节表示一个整型
//反汇编-可以看到汇编代码的内容
//寄存器

void test()
{
	int a = 20;
}
int main()
{
	int arr[10] = { 0 };
	int sz = sizeof(arr) / sizeof(arr[0]);
	int i = 0;
	for (i = 0; i < sz; i++)
	{
		arr[i] = i + 1;
		printf("%d ", arr[i]);
		test();
	}
	return 0;
}

posted @   morphism  阅读(14)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示