当前位置:网站首页>Introduction to program debugging and its use
Introduction to program debugging and its use
2022-08-10 15:21:00 【Seven, seven.】
Article table of contents
Debug
First, the concept of program debugging
Program debugging is the process of testing
, correcting syntax errors and logic errors by hand or compiling the program before putting it into actual operation.
Second, program debugging steps
1. Find the existence of program errors.
2. Locate the found error
3. Find out the cause of the error
4. Correct the error
5. Re-test the corrected program
Third, debugging in Windows environment
We use VS to debug in the Windows environment, and gdb in the linux environment.Debugging on VS is divided into two versions: Debug version and release version.
Debug version contains program debugging information without optimization.
The release version has carried out various optimizations to the program, so that the size and speed of the program code have been improved.Mainly for user use.
You can compare the running size of the two versions, as shown in the figure:
Obviously debug is much bigger than release.Normal debugging can only be performed under the debug version.
Fourth, debugging shortcuts
F5: Start debugging, often used to jump directly to the next breakpoint.
F9: The important role of creating breakpoints and canceling breakpoints. Breakpoints can be set anywhere in the program.In this way, the program can be stopped at the desired position at will, and then executed step by step.
F10: by procedure, used to process a procedure can be a function call, or a statement.
F11: statement by statement, execute a statement each time, this shortcut key can make our execution logic enter the function.
5. What debugging can do
1. View the value of the temporary variable
Enter debugging, initialize the a array to 0 in the code as shown in the figure, and enter a in the monitor, and the values from 0 to 9 will be initialized to 0 as shown in the figure:
2. View memory information
Enter a in the memory to display the addresses of these 10 numbers:
Of course, you can also see &a in the monitor, for example, enter &a[1], &a[9].As shown:
3. View the call stack
From the picture, we can see that the program only calls one main function.
4. View assembly information
5. View register information
6. Common compilation errors
(1), compilation error
Look directly at the error message in the box below, or solve it with your own experience
(2), link error
Look at the error message and find the identifier in the error message in the code. Generally, the identifier name does not exist or is misspelled. For example, main is written as mian or a non-existent function name is written.
(3), runtime error
This is relatively hard to find and requires debugging to gradually locate the error.
边栏推荐
- E. Cross Swapping(并查集变形/好题)
- Zhaoqi Technology Innovation High-level Talent Entrepreneurship Competition Platform
- SWIG教程《四》-go语言的封装
- 网络初识(二)
- 自定义picker滚动选择器样式
- Pytest framework optimization
- How is the monthly salary table stored in the database?Ask for a design idea
- 数字藏品平台系统开发实战
- 2022-08-10 Daily: Swin Transformer author Cao Yue joins Zhiyuan to carry out research on basic vision models
- 程序员=加班??——掌握时间才能掌握人生
猜你喜欢
随机推荐
线上线下课程教学培训小程序开发制作功能介绍
How to code like a pro in 2022 and avoid If-Else
Websocket realizes real-time change of chart content
易观千帆银行用户体验中心:聚焦银行APP用户体验
Mini Program-Voice broadcast function
Azure IoT Partner Technology Empowerment Workshop: IoT Dev Hack
metaForce佛萨奇2.0系统开发功能逻辑介绍
High-paid programmers & interview questions series 135 How do you understand distributed?Do you know CAP theory?
Pytest framework optimization
Based on Azuki Series: NFT Valuation Analysis Framework "DRIC"
List集合
Meaning and names of 12 nautical miles, 24 nautical miles and 200 nautical miles
蓝帽杯半决赛火炬木wp
E. Cross Swapping(并查集变形/好题)
基于inotify实现落盘文件的跨进程实时读写交互
Problem solving-->Online OJ (19)
JS entry to proficient full version
pm2之静态文件服务
Flask框架——基于Celery的后台任务
MySQL 原理与优化:Update 优化