调试Debug.
1.F5调试运行 F9打断点 F10逐过程调试 F11逐语句调试
2.窗口
局部变量,监视窗口,自动窗口
查看内存,堆栈,汇编,寄存器的窗口
3.像这种,调试才能找出来
原因:数组越界访问,恰好(vs2022)访问到了i的位置,导致死循环
4.什么是优秀的代码:简洁,高效,健壮
此处while语句实现了多个功能
PS:\0的ASCII值为0
5.assert(<assert.h>)判断对错函数:assert(exp)exp为真则无影响,为假则终止程序并且报错
可以用来测试代码,构建更优秀的代码
6.关于const(门锁)
const int a; a的值不能通过赋值(a=10)更改
但是可以通过指针绕开const:
黑体字的应对方法:
在*p前加上const即可保护num的值
但是此方法不能保护p本身
p可以变成其他变量的地址
想要保护p则需要写:int* const p = num;
满分代码![](https://img-blog.csdnimg.cn/97c99ed7faea424282e39f9a376f9d7d.png)
ps:printf字符串数组时,输入数组名(地址)可以直接把所有字符串打印出来,其他类型数组不同,得一个一个打印