C语言学习笔记
所有运行结果均在编译器VS2022,Debug,x86的环境下得出
VS调试技巧
一、Debug与Release
1.Debug
- Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序
- 是可以直接调试的
2.Release
- Release 称为发布版本,它往往是进⾏了各种优化,使得程序在代码⼤⼩和运⾏速度上都是最优的
- 这个版本是给用户使用的,不包含调试信息
二、常见的调试快捷键
1.F9:创建断点和取消断点
- 断点的作⽤是可以在程序的任意位置设置断点,打上断点就可以使得程序执⾏到想要的位置暂定执⾏,接下来我们就可以使⽤F10,F11这些快捷键,观察代码的执⾏细节。
- 条件断点:满⾜这个条件,才触发断点
2.F5:启动调试
- 经常⽤来直接跳到下⼀个断点处,⼀般是 和F9配合使⽤
3.F10:逐过程调试
- 通常⽤来处理⼀个过程,⼀个过程可以是⼀次函数调⽤,或者是⼀条语句。
4.F11:逐语句调试
- 就是每次都执⾏⼀条语句,但是这个快捷键可以使我们的执⾏逻辑进⼊函数内部。
- 在函数调⽤的地⽅,想进⼊函数观察细节,必须使⽤F11,如果使⽤F10,直接完成函数调⽤。
5.CTRL + F5:开始执行不调试
- 如果你想让程序直接运⾏起来⽽不调试就可以直接使⽤。
三、监视与内存观察
在调试的过程中我们,如果要观察代码执⾏过程中,上下⽂环境中的变量的值,有哪些⽅法呢?
这些观察的前提条件⼀定是开始调试后观察,⽐如:
#include<stdio.h>
int main()
{
int arr[10] = { 0 };
int i = 0;
for (i = 0; i < 10; i++)
{
arr[i] = i * 2;
}
for (i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
return 0;
}
1.监视
1.1打开监视窗口
开始调试后,在菜单栏中【调试】->【窗口】->【监视】,打开任意⼀个监视窗⼝,输⼊想要观察的对象就⾏。
打开监视窗口:
1.2开始观察自己想要的
这里我们可以清楚地看到数组arr的每一项的值
2.内存
1.打开内存窗口
如果监视窗⼝看的不够仔细,也是可以观察变量在内存中的存储情况,还是在【调试】->【窗⼝】->
【内存】
打开内存窗⼝:
2.在内存中观察数据
在打开内存窗⼝后,要在地址栏输⼊:arr,&a,这类地址,就能观察到该地址处的数据。