设置执行点
=====

开发者可以通过“设置执行点”在调试会话期间跳转到编辑器中的任意代码行，并在对应位置设置执行点，跳过当前位置到目标位置之间的所有代码。

此操作适用于线性和非线性执行路径，用于中断和跳过循环，或者在if-else子句表达式或switch-case语句中选择另一个分支。例如，如果要检查另一个分支而不重新启动调试会话，可使用该功能。

#### 操作步骤

1.  将当前执行指针（代表当前运行位置的橙色箭头）拖动到所需的代码行。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/8c/v3/JDQJZhptQeGBjpjSAfusAg/zh-cn_image_0000002594474328.png?HW-CC-KV=V1&HW-CC-Date=20260612T073859Z&HW-CC-Expire=86400&HW-CC-Sign=69C91999F84E55D05E78C5E5E9DFB2323F2B9669D48271063CA5091C44FA1846)
    
2.  在需要设置执行点的行，点击鼠标右键，在弹出菜单中选择“Set Execution Point to Cursor”。
    
    ![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/b9/v3/I-emzVfpR3SopJdIc_DKow/zh-cn_image_0000002594634244.png?HW-CC-KV=V1&HW-CC-Date=20260612T073859Z&HW-CC-Expire=86400&HW-CC-Sign=3846AC56186B95C5F2AAC7CF83B87B7D9E770A7EAFF591AC6F3CA4E2C757F705)
    

![](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_scene_100_1/47/v3/qg2_qshmQ5WZltmDCfNTCQ/note_3.0-zh-cn.png?HW-CC-KV=V1&HW-CC-Date=20260612T073859Z&HW-CC-Expire=86400&HW-CC-Sign=A6B3D126293FBB66032E76111146DF22C33A0C0A108DF2DCDA2D25581B6551EE)

使用“设置执行点”时，仅修改了程序计数器的值，未修改其他寄存器的值，这可能会导致不可预知的错误，例如：

*   如果跳过初始化变量的那一行，应用将从堆栈/寄存器中获取值，这可能会导致段错误。
*   如果可执行代码被编译器优化，可能会得到一个不可预知的结果，或者无法移动执行点。

此外，还有一些其他不符合预期的问题，例如变量值错乱、堆栈信息异常等。