坚炜小白日记 2023-01-10 11:14 采纳率: 91.7%
浏览 31
已结题

clion中rust变量debug值与实际显示不符

最近刚开始学习rust,发现rust中同一个变量名称可以定义多次并取最后一次的值。但我在编译器Clion使用debug模式进行调试的时候发现demo中的num变量仍显示为第一行中的浮点值,但结果显示是后面的String,请问这个是Clion的bug吗还是什么

img

img

  • 写回答

1条回答 默认 最新

  • 快撑死的鱼 2023-01-16 15:21
    关注

    回答不易,求求您采纳哦

    这不是 Clion 中的错误,而是变量在调试模式下的显示方式与其实际值的差异。

    Rust 是一种非常注重所有权和借用的语言,它不允许在定义变量后重新分配它。但是,变量名可以被另一个同名变量覆盖。这个新变量将与前一个变量同名,但具有不同的类型和值。

    当您在 Clion 中调试代码时,变量名称 num 在第一行中显示为浮点值,因为这是它的初始值。但是,当稍后在代码中隐藏该变量时,它会采用新的类型和值,即 String。Clion 的调试模式可能无法自动更新变量的类型和值,这就是为什么它仍然显示初始值的原因。

    作为解决方案,您可以通过打印来检查代码中变量的值。

    此外,您可以尝试使用 rust 的调试功能,例如println!("{:?}", variable)或dbg!(variable)在运行时查看变量值及其类型。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月27日
  • 已采纳回答 1月19日
  • 创建了问题 1月10日

悬赏问题

  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化