You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在CLion 2024.1中显示未赋值的函数返回值?

如何在CLion 2024.1中显示未赋值的函数返回值

这个功能的启用和查看方式取决于你使用的调试器(GDB或LLDB),以下是分场景的操作步骤:

针对GDB用户

  1. 启用返回值捕获

    • 打开File > Settings > Build, Execution, Deployment > Debugger > Data Views > C/C++
    • 勾选**"Show return values of functions",若需要显示所有未赋值的返回值,同时勾选"Show values for all calls"**(默认仅显示栈顶函数的返回值)。
  2. 查看返回值

    • 调试时,当函数执行完毕且返回值未被赋值,该值会自动出现在调试面板的Frames区域(调用栈面板),对应栈帧下方会显示Return value: [具体值]。
    • 也可以手动在监视窗口添加寄存器表达式:x86_64架构用$rax,ARM架构用$r0,直接查看寄存器中的返回值。

针对LLDB用户

  1. 启用返回值捕获

    • 打开File > Settings > Build, Execution, Deployment > Debugger > LLDB
    • 勾选**"Show return values"**选项。
  2. 查看返回值

    • 调试时,返回值会显示在调用栈帧的详情区域;也可在调试控制台输入frame variable --show-return-value,手动查看当前栈帧的返回值。

常见注意事项

  • 你之前找错了设置路径:相关选项不在Debugger根目录下,而是在Debugger > Data Views > C/C++(GDB)或Debugger > LLDB(LLDB)子菜单内。
  • 只有当函数执行完毕、程序停在返回后的断点时,返回值才会显示——函数执行过程中无法查看。
  • 编译器优化可能导致返回值无法被捕获,建议调试时关闭优化(将CMake/Makefile中的-O参数改为-O0)。

内容的提问来源于stack exchange,提问作者einpoklum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 18:52:01