一、快速设置断点
操作:
- 在代码编辑器左侧行号区,点击即可打上/取消红点。
- 或选中行,按 F9。
案例:
// Form1.cs 中
private void buttonSave_Click(object sender, EventArgs e)
{
var text = textBoxName.Text; // ← 在这一行打断点
SaveName(text);
}
运行(F5),点击按钮后,程序会在断点处暂停,你可以查看 text 的当前值。
二、条件断点
操作:
- 右击已设置的断点,选择 “条件…”
- 填写表达式,如:
text.Length == 0 - 勾选 “仅当条件为真时中断”。
案例:
// 只在输入框为空时才中断
text.Length == 0
当 textBoxName.Text 为空字符串时才触发断点,其它情况下自动跳过。
三、单步执行
| 功能 | 快捷键 | 说明 |
|---|---|---|
| 继续运行 | F5 | 断点间快速运行 |
| 单步跳过 | F10 | 不进方法,直接跳下一行 |
| 单步进入 | F11 | 进入方法内部查看细节 |
| 跳出当前方法 | Shift+F11 | 从当前方法返回到调用处 |
案例:
在 ComputeSum(a, b) 调用处按 F11,就能一步步进入该方法内部,观察每个变量如何变化。
四、监视变量 & 快捷查看
- 本地 (Locals) 窗口:自动显示当前作用域所有变量。
- 监视 (Watch) 窗口:手动添加表达式,实时查看结果。
- 立即 (Immediate) 窗口:在暂停时,输入 C# 语句或表达式即时求值,甚至调用方法。
操作:
- 打开调试 ➔ 其他窗口 ➔ “本地/监视/立即”。
- 在“监视”窗口点 “添加监视”,输入:
list.Count。 - 在“立即”窗口输入:
DateTime.Now.ToString(),按 Enter 即可看到当前时间。
案例:
var list = new List<int> { 1, 2, 3 };
// 暂停在下一行,监视窗口中输入 list.Sum(),实时查看 6 的结果
五、使用“输出”窗口打印调试信息
操作:
在代码中插入:
System.Diagnostics.Debug.WriteLine($"当前输入:{textBoxName.Text}");
运行时调试输出会打印到 “输出” → “调试” 面板,无需打断点即可跟踪变量值。
案例:
private void buttonCalc_Click(object s, EventArgs e)
{
Debug.WriteLine($"开始计算,参数 = {num}");
var result = Calc(num);
Debug.WriteLine($"结束计算,结果 = {result}");
}
六、快速重启调试
当修改了代码后,只需按 Ctrl+Shift+F5 即可“重新启动调试”,不用手动先停止再运行,省时省力。
七、小技巧合集
-
跳到异常处: 开启“异常设置”(Ctrl+Alt+E),勾选“公用语言运行时异常”的“Thrown”,遇到未捕获异常自动中断。
-
Tracepoint(跟踪断点): 右击断点 ➔ “操作…” ➔ 勾选“打印消息”并填写
{value},无中断只打印。 -
调试时修改变量: 在“监视”或“本地”窗口双击某个变量,即可实时替换它的值,用于模拟不同场景。
小编总结码字不易,如果感觉对你有帮助的话请点赞收藏吧!

1804

被折叠的 条评论
为什么被折叠?



