Windows - C 语言开发环境 llvm-mingw + vscode 程序调试跟非调试运行

目录

调试是什么

编译器警告和错误

静态分析工具

运行时调试

断点

步进执行

观察和监视

内存调试

日志记录

条件和监视点

调用栈跟踪

性能分析

图形化调试工具

单元测试

集成和系统测试

代码审查

编写测试代码

启动调试

运行-启动调试

打断点

非调试模式

点击调试文件


这期会介绍如何进行程序调试跟非调试运行

调试是什么

C语言的调试是指在程序开发过程中,通过特定的调试工具和技术来识别和修复代码中的错误(也称为bug)的过程。调试是软件开发生命周期中的一个重要环节,它帮助开发者确保程序按照预期的方式运行。以下是C语言调试中的一些关键方面:

  • 编译器警告和错误

    • 在编译阶段,编译器会提供关于语法错误、类型不匹配、未定义的行为等的反馈。
  • 静态分析工具

    • 使用静态代码分析工具可以在不运行代码的情况下检测潜在的问题。
  • 运行时调试

    • 在程序运行时,使用调试器来检查程序的行为,包括变量的值、程序的流程和系统资源的使用。
  • 断点

    • 在调试器中设置断点,允许开发者暂停程序的执行并在特定的代码位置检查状态。
  • 步进执行

    • 调试器允许开发者逐行执行代码(步进),逐步跟踪程序的执行流程。
  • 观察和监视

    • 在调试过程中,可以观察和监视变量的值、内存的使用情况以及函数调用的顺序。
  • 内存调试

    • 检测内存泄漏、栈溢出、缓冲区溢出和其他内存相关的问题。
  • 日志记录

    • 在代码中添加日志语句,记录程序运行时的关键信息,帮助分析问题。
  • 条件和监视点

    • 在调试器中设置条件断点,仅在满足特定条件时才触发断点。
  • 调用栈跟踪

    • 查看函数调用的顺序和层次,理解程序的执行路径。
  • 性能分析

    • 评估程序的性能,识别瓶颈和优化代码。

  • 图形化调试工具

    • 使用图形界面的调试工具,如 gdb 的 GUI 版本、Visual Studio Debugger、CLion Debugger 等,可以更方便地进行调试。
  • 单元测试

    • 编写和运行单元测试来验证代码的各个部分是否按预期工作。
  • 集成和系统测试

    • 在更广泛的上下文中测试代码,确保它与其他系统组件正确交互。
  • 代码审查

    • 通过人工或自动化工具审查代码,以查找潜在的错误和改进代码质量。

调试是一个迭代的过程,通常需要多次运行和修改代码才能找到并修复所有的问题。有效的调试技巧和工具可以显著提高开发效率和程序质量。

编写测试代码

#include <stdio.h>

int main(){
    printf("Hello world!");
    return 0;
}

启动调试

运行-启动调试

 这是我们上期装的编译器

Windows - C 语言开发环境 llvm-mingw + vscode (零基础超适用)

打断点

也就是点击要测试的代码的最左边

总之小量代码测试不出,得换成大量的来

非调试模式

点击调试文件

这是我们上期装的编译器

Windows - C 语言开发环境 llvm-mingw + vscode (零基础超适用)

(到底啦)

  • 10
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
mingw-w64-builds 和 llvm-mingw 都是为 Windows 平台提供的开发工具集。 mingw-w64-builds 是一个基于 MinGW(Minimalist GNU for Windows)的项目,旨在为 Windows 提供一个开发环境,使开发者能够使用 GNU 工具链(如 GCC 编译器)来编译 Windows 下的应用程序。mingw-w64-builds 支持 32 位和 64 位的 Windows 平台,并提供了一系列开发工具和库,如 GCC 编译器、GDB 调试器、MSYS2 等。mingw-w64-builds 的目标是提供一个免费、开源、易于使用的开发环境,使开发者能够方便地在 Windows 上进行 C/C++ 开发llvm-mingw 则是基于 LLVM(Low Level Virtual Machine)的一个 MinGW 工具集。LLVM 是一个 modulable 编译器和工具链的项目,它提供了一组可扩展的工具,适用于多种编程语言llvm-mingw 则是将 LLVMMinGW 结合起来,为 Windows 平台提供了一套完整的开发工具链。通过使用 llvm-mingw开发者可以使用 LLVM 提供的优秀代码生成能力,将高级语言代码(如 C、C++)编译为高效的机器码。llvm-mingw 提供了基于 LLVM 的编译器 Clang、调试器 lldb、库等工具,为开发者提供了一个现代化、高效的 Windows 开发环境mingw-w64-builds 和 llvm-mingw 都在为 Windows 平台上的开发者提供更好的开发工具支持,使他们能够更方便地进行应用程序的开发调试。根据个人的需求和喜好,开发者可以选择适合自己的工具集来进行开发工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小Mie不吃饭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值