Fortran Coder

查看: 5712|回复: 3
打印 上一主题 下一主题

[调试器] 这是一个关于强制转换变量类型的问题....如图

[复制链接]

20

帖子

8

主题

0

精华

熟手

F 币
126 元
贡献
73 点
跳转到指定楼层
楼主
发表于 2021-8-12 19:56:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
问题如图,谢谢友友们~

微信图片_20210812195555.png (49.19 KB, 下载次数: 219)

微信图片_20210812195555.png
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

98

帖子

0

主题

0

精华

大师

F 币
658 元
贡献
293 点

规矩勋章元老勋章新人勋章

沙发
发表于 2021-8-12 22:56:25 | 只看该作者
截图请包含断点位置。
NUMD2 这个值是 -9.255963134931783d+061,这个值正好是 0xCCCCCCCC,这看起来是没有初始化。
请注意 NUMD2 的作用域,变量覆盖。
天之道,损有余而补不足

20

帖子

8

主题

0

精华

熟手

F 币
126 元
贡献
73 点
板凳
 楼主| 发表于 2021-8-12 23:43:12 | 只看该作者
胡文刚 发表于 2021-8-12 22:56
截图请包含断点位置。
NUMD2 这个值是 -9.255963134931783d+061,这个值正好是 0xCCCCCCCC,这看起来是没有 ...

断点就在光标选中的那一行,赋值是运行过的,但是就是没附上值。我给他初始化为0后,后面却成为了一直是0,赋值仍然失败是怎么回事?谢谢谢谢

98

帖子

0

主题

0

精华

大师

F 币
658 元
贡献
293 点

规矩勋章元老勋章新人勋章

地板
发表于 2021-8-13 08:36:23 | 只看该作者
本帖最后由 胡文刚 于 2021-8-13 08:37 编辑

断点处是没有执行的,需要再向下一步才执行。

此外,你要考虑变量覆盖问题。比如都叫 NUMD2 ,是不是module中有一个,局部变量有一个,或者虚参有一个。他们是具有覆盖关系的。
此外,本宇宙不存在“完善到极致”的调试器。个别情况下,调试器显示的值是不可信的。最好是write出来看看,以确认问题所在。
天之道,损有余而补不足
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-4-20 03:13

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表