【基础】CodeBlocks调试器基本使用方法
CodeBlocks是一个开放源码的全功能的跨平台C/C++集成开发环境。
下载地址:http://www.codeblocks.org/downloads/26
其中,Windows环境下可以使用安装包安装程序,或使用免安装的zip。
一、
CodeBlocks是一个集成开发环境(IDE),其中最重要的开发工具,如,
编辑器:编写修改源码;
编译器:将源码编译成目标语言和可执行程序;
调试器:跟踪程序执行过程,调试问题代码;
二、调试器的功能
大致上,调试器是IDE中不可或缺的工具。
调试器在跟踪代码执行过程,进行bug定位有着非常便利的作用。
虽然有说法不能过分依赖调试器,但一般情况下,尤其是程序逻辑复杂,使用调试器可以极大地提高程序的优化和维护效率。
三、CodeBlocks调试器的基本使用方法
首先,CodeBlocks调试器需要一个完整的项目才可以启动,单独的文件无法使用调试器。使用调试器,创建的项目最好在英文路径下,路径不能包含中文字符。
1. 创建一个项目
1.1 CodeBlocks启动时或启动后创建项目
1.2 控制台程序选择
1.3 填写项目名和路径
1.4 选择编译器,默认即可
1.5 项目创建完成后如下,可以在自动创建的main.cpp中编写程序,或创建新文件
2 启动调试器
2.1 一般,调试器的按钮可以在工具栏找到
如果没有,可以从view菜单项中调出
2.2 设置断点
使用调试器时需要让程序在需要的位置中断,在启动调试器前设置断点如下,鼠标点击编辑器的左边即可设置断点,
2.3 启动调试器
2.3.1 调试器需要以Debug模式启动,点击按钮debug:
2.3.2 启动后,程序执行到断点时,中断
2.3.3 如果在执行过程中遇到输入语句,则需要输入完成后才可以继续执行
2.3.4 在工具栏中打开调试窗口,主要打开Watches
2.3.5 Watches中显示的是当前变量的值,可以展开数组,
*2.3.6 除了自动显示的值,也可以手动添加需要观察的变量,如数组内的某个值,
*2.3.7 点击 Next line 执行下一个语句,右边的Step into为执行内部语句,最右侧的红色按钮Stop debugger为结束调试;当执行到函数调用时,可以使用next line直接执行函数,或step into跳转到函数内部执行语句,希望停止调试则点击stop debugger,
结束
以上为调试器的基本使用方法,调试的目的主要是跟踪变量值,观察程序是否按预期的情况在执行,如果遇到变量值与预期不符,则问题就出现在之前的语句。
在调试之前,需要考虑可能有问题的代码段,在此代码段之后设置断点。
(在实际应用中,可以尝试使用VS的调试器)
【基础】CodeBlocks调试器基本使用方法的更多相关文章
- CodeBlocks调试器设置错误问题
错误如下: Building to ensure sources are up-to-date Selecting target: Debug ERROR: You need to specify ...
- VS2003"无法启动调试 没有正确安装调试器"的解决方法
在用VS2003做项目的时候,经常调试程序,但是有时候回出现如下问题“无法启动调试,没有正确安装调试器,请运行安装程序或修复调试器”.第一次碰到还以为是运气不好,就重新用vs2003安装程序重新修复了 ...
- CodeBlocks调试器缺少(gdb.exe)文件
错误如下: Building to ensure sources are up-to-date Selecting target: Debug ERROR: You need to specify ...
- OD调试器调试Delphi程序按钮事件断点方法
这几天我调试一个Delphi程序,总是无法断点按钮事件,像我这样的菜鸟断点按钮事件真心累啊.所以我分享一下我下断点的经验!希望新手们少走弯路!! 工具/原料 OD调试器 Delphi程序 方法 ...
- VS2003"无法启动调试 没有正确安装调试器"的解决办法
VS2003"无法启动调试 没有正确安装调试器"的解决方法 在用VS2003做项目的时候,经常调试程序,但是有时候回出现如下问题“无法启动调试,没有正确安装调试器,请运行安装程序或 ...
- C#调试器导航
本快速入门演示如何在 Visual Studio 调试会话中导航,以及如何在会话中查看和更改程序状态. 本 快速入门适用于不熟悉用 Visual Studio 进行调试的开发人员,以及要详细了解在 V ...
- 在 Visual Studio 调试器中指定符号 (.pdb) 和源文件
查找并指定符号文件和源文件:指定符号加载行为.使用符号和源服务器上:加载符号自动或在要求. 内容 查找符号 (.pdb) 文件 查找源文件 查找符号 (.pdb) 文件 说明 在之前的 Vis ...
- Flash Player调试器版本的解决办法Flash Builder 找不到所需的Adobe
Flash Player调试器版本的解决办法Flash Builder 找不到所需的Adobe Flash Builder在Debug时出现的问题:Flash Builder 找不到所需的Adob ...
- 关于TransactionScope出错:“与基础事务管理器的通信失败”的解决方法总结
遇到此问题先需确认几个问题: 1)MS DTC是否设置正确? 2)是否启用了防火墙?是否对DTC做了例外? 3)是否做了hosts映射?是否跨网域通信? 开发分布式事务,碰到一个错误“与基础事务管理器 ...
随机推荐
- 基于Arduino的按键控制LED实验
I/O 口的意思即为INPUT 接口和OUTPUT 接口,到目前为止我们设计的小灯实验都还只是应用到Arduino 的I/O 口的输出功能,这个实验我们来尝试一下使用Arduino的I/O 口的输入功 ...
- 【转】Hive Data Manipulation Language
Hive Data Manipulation Language Hive Data Manipulation Language Loading files into tables Syntax Syn ...
- 使用docker增加部署速度的一次实践
问题: 公司给我们分配的服务器到期后不付费了,换成新服务商的服务器了.也就是说我们之前的环境需要重新搭建一次.光项目就50多个(微服务40+,其他服务不到10个),需要重新部署. 之前部署项目时,需要 ...
- CVE-2019-0708远程桌面服务远程执行代码漏洞exp利用过程
CVE-2019-0708远程桌面服务远程执行代码漏洞 上边这洞是啥我就不多说了,描述类的自行百度. 受影响系统版本范围: Windows Server 2008 R2 Windows Server ...
- 【JavaScript 基础知识】一篇关于 JavaScript 一些知识点的总结
JavaScript 中基础数据类型 数据类型名称 数据类型说明 Undefined 只有一个值,即 undefined ,声明变量的初始值. Null 只有一个值,即 null ,表示空指针, ...
- 对标Eureka的AP一致性,Nacos如何实现Raft算法
一.快速了解Raft算法 Raft 适用于一个管理日志一致性的协议,相比于 Paxos 协议 Raft 更易于理解和去实现它. 为了提高理解性,Raft 将一致性算法分为了几个部分,包括领导选取(le ...
- MySQL——DOS命令
翻开之前的笔记发现有这么一篇,于是整理了一下发出来加深记忆并分享交流,欢迎纠错,谢谢!!! 1.启动MySQL服务: net start mysql; 2.停止MySQL服务: net stop my ...
- MySQL数据库之xtrabackup物理备份(一)
前言:说到数据库备份,我们知道可以用来对数据库进行备份的工具有mysqldump.mydumer.mysqlpump等等,实际工作中,机器上的数据库不大的话,都是用mysqldump工具来备份,这些备 ...
- Windows10系统配置telnet服务的方法
通常情况下,Windows10正式版系统的telnet服务都是处于关闭状态的,需要我们手动开启才可以.telnet服务可以调试端口,其重要性不容小视.今天,系统城小编就教大家如何配置telnet服务. ...
- Web容器、Servlet容器、Spring容器、SpringMVC容器之间的关系
以下内容为个人理解,如有误还请留言指出,不胜感激! Web容器 web容器(web服务器)主要有:Apache.IIS.Tomcat.Jetty.JBoss.webLogic等,而Tomcat.Jet ...