前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >bug的定义以及VS调试方法

bug的定义以及VS调试方法

作者头像
Skrrapper
发布2024-06-18 15:30:05
260
发布2024-06-18 15:30:05
举报
文章被收录于专栏:技术分享技术分享

1.bug是什么?

我们在敲代码,甚至是在游戏或者生活场景中,经常会说我们遇到bug了。那么bug究竟是个什么东西呢?

“Bug” 的创始⼈格蕾丝·赫柏(Grace Murray Hopper),她是⼀位为美国海军⼯作的电脑专家, 1947年9⽉9⽇,格蕾丝·赫柏对Harvard Mark II设置好17000个继电器进⾏编程后,技术⼈员正在进⾏整机运⾏时,它突然停⽌了⼯作。于是他们爬上去找原因,发现这台巨⼤的计算机内部⼀组继电器的 触点之间有⼀只⻜蛾,这显然是由于⻜蛾受光和热的吸引,⻜到了触点上,然后被⾼电压击死。所以在报告中,赫柏⽤胶条贴上⻜蛾,并把“bug”来表⽰“⼀个在电脑程序⾥的错误”,“Bug”这个说法⼀直沿⽤到今天。

bug的意思就是指程序漏洞,是需要修复的。

2.debug是什么?

在bug前加一个de,它的意思就是解决bug,也就是看作调试的意思,相当于一个找到bug并解决它的过程。

3.debug与release

这是在vs中的两种不同的版本模式。

debug调试版本就是程序员用来调试自己代码的版本。

release发布版本就是程序员发布出去的代码版本,通常这个版本的代码进⾏了各种优化,使得程序在代码⼤⼩和运⾏速度上都是最优的,使得用户能有更好的使用体验。同时release版本不能进行调试。

它俩有个很显著的区别就是内存大小,debug版本远大于release版本。

4.vs的调试以及快捷键

调试是有快捷键的。

F9:创建和取消断点。

图中这个红色的点就是断点,断点的作⽤是可以在程序的任意位置被设置,打上断点就可以使得程序执⾏到想要的位置暂定执⾏,接下来我们就可以使⽤F10,F11这些快捷键,观察代码的执⾏细节。

F5:其实就是平常的运行键,也就是继续运行,不中断,直到遇到断点。通常和F9一起使用。图中那个箭头表示在按F5运行之后遇到断点停了下来。

F10:是逐过程运行,也是一次运行一条语句,但遇到子函数调用时不进入,直到子函数完成后直接继续。图中箭头就是开始调试的地方,而当按一次F10之后它只会向下继续调试一行,而不会像F5那样一直向下运行

F11:是逐语句运行,和F10的区别是,当遇到函数时会进入其内部继续进行调试。而F10会直接完成函数调用。图中可以看出在按下F11之后进入了函数中调试。

VS中常用的快捷键_vs快捷键-CSDN博客这篇博客里详细介绍了vs的一系列快捷键。

5.监视

如果我们在调试中想要查看每个变量的具体数据变化,那么就要用到监视。

在监视中输入我们想要监视的变量,然后在调试时变量的不同参数就会跟着发生变化。

6.内存

除了监视基本的数值,我们还可以查看内存的情况。

在地址栏输入要查看内存的变量,就会自动定位到该地址。

7.编程常见错误分类

编译型错误:编译型错误⼀般都是语法错误,这类错误⼀般看错误信息就能找到⼀些蛛丝⻢迹的,双击错误信息也 能初步的跳转到代码错误的地⽅或者附近。编译错误,随着语⾔的熟练掌握,会越来越少,也容易解决。

链接型错误:看错误提⽰信息,主要在代码中找到错误信息中的标识符,然后定位问题所在。⼀般是因为

• 标识符名不存在

• 拼写错误

• 头⽂件没包含

• 引⽤的库不存在

运行时错误:运⾏时错误,是千变万化的,需要借助调试,逐步定位问题,调试解决的就是运⾏时问题。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-04-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.bug是什么?
  • 2.debug是什么?
  • 3.debug与release
  • 4.vs的调试以及快捷键
  • 5.监视
  • 6.内存
  • 7.编程常见错误分类
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档