
LLDB 是 macOS 上默认的调试器,作为 LLVM 项目的一部分,它与 Clang 编译器高度集成,是 C++ 开发者在 macOS 平台进行调试的首选工具。相比 GDB,LLDB 在苹果生态中更稳定、响应更快,支持现代 C++ 特性,并深度整合 Xcode 和命令行工作流。
要使用 LLDB 调试 C++ 程序,必须在编译时加入调试符号。使用 -g 标志让编译器生成调试信息:
clang++ -g -std=c++17 main.cpp -o myapp这样生成的可执行文件 myapp 就包含了变量名、行号等信息,LLDB 才能准确断点和查看变量。
使用以下命令启动调试会话:
立即学习“C++免费学习笔记(深入)”;
lldb myapp进入交互界面后,输入 run(或简写 r)来执行程序:
(lldb) run (lldb) run arg1 arg2 # 带参数运行断点是调试的核心功能。你可以按文件行号或函数名设置断点:
程序暂停后,可用以下命令逐步执行:
使用 frame variable 或简写 fr v 查看当前作用域的变量:
(lldb) fr v (int) x = 5 (std::string) name = "test"也可以打印具体变量或表达式:
(lldb) expr x + 1 (int) $0 = 6 (lldb) p name.c_str() (const char *) $1 = 0x000000010050dc98 "test"当程序中断时,使用以下命令分析调用流程:
若程序已运行,可通过进程 ID 调试:
lldb -p 12345或者在 LLDB 中使用:
(lldb) process attach --pid 12345在 VS Code 中安装 C/C++ 插件后,配置 launch.json 即可图形化使用 LLDB:
"type": "lldb", "request": "launch", "name": "Debug", "program": "${workspaceFolder}/myapp", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}"这样就能通过界面操作断点、变量监视和调用栈浏览。
基本上就这些。LLDB 功能强大且响应迅速,掌握基本命令后,C++ 调试效率会大幅提升。macOS 下无需额外配置,开箱即用,是 Clang 工具链的理想搭档。
以上就是c++++如何使用LLDB进行调试_c++ Clang/macOS下的强大调试器的详细内容,更多请关注php中文网其它相关文章!
c++怎么学习?c++怎么入门?c++在哪学?c++怎么学才快?不用担心,这里为大家提供了c++速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号