当前位置:网站首页>How to adjust bugs in general projects ----- take you through the whole process by hand
How to adjust bugs in general projects ----- take you through the whole process by hand
2022-07-05 05:40:00 【Falling spring is only inadvertently】
transfer bug technological process
- One 、 Run code , Find the error .
- Two 、 Find the error location .
- 3、 ... and 、 If the annotation works normally , Then there is an error in the commented part ( This is the most desired result );
- Four 、 So I thought it should not be the pot here , Then we will main The start of the call in the function .
- 5、 ... and 、 Generally, compilers have , View definition , Jump to the defined function , To a large extent, this allows us to quickly find bug.
- 6、 ... and 、 Similar to method 5 , Find the problem of calling functions in this function , Or the problem of the function itself
- 7、 ... and 、 Last question , Focus on one if In the sentence
- 8、 ... and 、 Because it's a file stream , I'll try if I read something , Or the file did not open successfully ,
- Nine 、 This analysis is over , I hope that helps
The example only tells you how to find bug, Will not be too specific bug The solution of the . because bug Too much , There are many solutions . The most important thing is to find bug.
Let's take a real case to lead you to experience .
One 、 Run code , Find the error .
( In this step , Understand the prompt to report an error , Generally, compilers are more or less , If you don't understand it, you can assign a value and paste it into CSDN Check to see if anyone has the same error report )
In this error report , I extracted the entry point ,( As shown in the above figure, the part with red lines ).
Two 、 Find the error location .
First, let's see if there are obvious grammatical errors , If you can't see . Try to comment out this part to see if there will be errors ( The key ).
No obvious mistakes were found , So I tried to comment it out , Be careful not to make mistakes when commenting .( That is, comment out the root related to this code , Therefore, it also reflects that we should try to integrate the reused code into a function ).
Associated with what it wants
3、 ... and 、 If the annotation works normally , Then there is an error in the commented part ( This is the most desired result );
without , ( Here's the picture , The same mistake , I feel evil ...) So paste the wrong assignment , Search and see
The search results are as follows , It would be best if we found the same , If not ....( This blogger just doesn't , Dry face )
However, it seems to be mentioned in these similar results new . At first, I thought the template class was written incorrectly ( After all, the template class is difficult for most heroes ). Then the whole header file and the corresponding cpp It's annotated ( Later, I found that this idea was wrong , Don't learn from bloggers )
People are tired of commenting , It's better to sleep for a while and clear your mind . (⊙o⊙)… Get down to business .
Four 、 So I thought it should not be the pot here , Then we will main The start of the call in the function .
First, comment out all , See if there's any more , There is also the compiler problem . Then liberate one by one to find the function in question .
Pictured above , After doing this , Found to be Here's the picture
5、 ... and 、 Generally, compilers have , View definition , Jump to the defined function , To a large extent, this allows us to quickly find bug.
( Here's the picture )
6、 ... and 、 Similar to method 5 , Find the problem of calling functions in this function , Or the problem of the function itself
( Did I mention the called function again here , Therefore, modularization of functions is conducive to our adjustment bug)
7、 ... and 、 Last question , Focus on one if In the sentence
continue
It's inside The problem of two sentences , Then analysis , It is definitely not the fault of the following statement alone , Because if there is no It must be wrong to assign a value when applying for space . And the first sentence has new , Think of the previous search results . I just wonder if new The question of .
First, I tried to become malloc . It turns out , Take a look at this blog and you will know that you can't do this , Also have to new . Why not malloc
After that ? I thought about it , Since it's right to apply for a space , After applying for space , The assignment of the second statement is wrong . assignment ( Is this sentence very simple ...), The operation process of assignment is no problem , that , There is only one truth , That's it Used for assignment temp There is a mistake .( Finally found , That's true )
8、 ... and 、 Because it's a file stream , I'll try if I read something , Or the file did not open successfully ,
Good guy, if you don't try, you don't know. Try and be surprised . It turned out that the file couldn't be opened () I'm impressed . This also tells us that we must add a command to check whether the file has been opened .
Nine 、 This analysis is over , I hope that helps
边栏推荐
- After setting up the database and website When you open the app for testing, it shows that the server is being maintained
- Add level control and logger level control of Solon logging plug-in
- 挂起等待锁 vs 自旋锁(两者的使用场合)
- Add level control and logger level control of Solon logging plug-in
- In this indifferent world, light crying
- Light a light with stm32
- 2022年贵州省职业院校技能大赛中职组网络安全赛项规程
- Little known skills of Task Manager
- YOLOv5-Shufflenetv2
- Time of process
猜你喜欢
剑指 Offer 06.从头到尾打印链表
Implement a fixed capacity stack
Improvement of pointnet++
R语言【数据集的导入导出】
Solution to the palindrome string (Luogu p5041 haoi2009)
Dichotomy, discretization, etc
AtCoder Grand Contest 013 E - Placing Squares
全国中职网络安全B模块之国赛题远程代码执行渗透测试 //PHPstudy的后门漏洞分析
利用HashMap实现简单缓存
API related to TCP connection
随机推荐
[jailhouse article] look mum, no VM exits
Chapter 6 data flow modeling - after class exercises
Codeforces Round #732 (Div. 2) D. AquaMoon and Chess
Transform optimization problems into decision-making problems
CF1634E Fair Share
Find a good teaching video for Solon framework test (Solon, lightweight application development framework)
Fried chicken nuggets and fifa22
SAP-修改系统表数据的方法
Alu logic operation unit
剑指 Offer 04. 二维数组中的查找
[es practice] use the native realm security mode on es
Dichotomy, discretization, etc
2017 USP Try-outs C. Coprimes
2022 极术通讯-Arm 虚拟硬件加速物联网软件开发
游戏商城毕业设计
A preliminary study of sdei - see the essence through transactions
API related to TCP connection
object serialization
软件测试 -- 0 序
Using HashMap to realize simple cache