冠辉机械 发表于 2023-1-3 21:57:45

单步调试 step into/step out/step over 区别说

单步调试step into/step out/step over区别


[*]step into:单步执行,遇到子函数就进入并且继续单步执行(简而言之,进入子函数);
[*]step over:在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。有一点,经过我们简单的调试,在不存在子函数的情况下是和step into效果一样的(简而言之,越过子函数,但子函数会执行)。
[*]step out:当单步执行到子函数内时,用step out就可以执行完子函数余下部分,并返回到上一层函数。

下面以 pycharm IDE 为示例作简要说明

https://img.jbzj.com/file_images/article/202211/2022110210532167.png
点击 pycharm 右上部爬虫按钮进入调试状态,程序在第14行断点处停止,按 F5(step into)进入 add() 函数,按 F7(step out) 执行完add()函数余下部分,返回入口函数 debug_test() 继续执行,按 F6(step over) 直接将 divide() 函数执行完。最后单步执行至入口函数结束。

step into/out/over 调试基本按钮

https://img.jbzj.com/file_images/article/202211/2022110210552768.png

[*]step into 单步的调试,碰到子函数便进入到子函数里面,一步步的执行程序
[*]step over 单步的调试,碰到子函数便一步执行完,不用进到函数里面
[*]step out 在程序执行的进入到子函数里面的时候跳出函数使用
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

来源:https://www.jb51.net/article/266506.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: 单步调试 step into/step out/step over 区别说