Fortran Coder

查看: 249|回复: 3

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

[复制链接]

20

帖子

8

主题

0

精华

熟手

F 币
126 元
贡献
73 点
发表于 2021-8-12 19:56:49 | 显示全部楼层 |阅读模式
问题如图,谢谢友友们~
微信图片_20210812195555.png
回复

使用道具 举报

77

帖子

0

主题

0

精华

专家

F 币
544 元
贡献
234 点

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

发表于 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,赋值仍然失败是怎么回事?谢谢谢谢

77

帖子

0

主题

0

精华

专家

F 币
544 元
贡献
234 点

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

发表于 2021-8-13 08:36:23 | 显示全部楼层
本帖最后由 胡文刚 于 2021-8-13 08:37 编辑

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

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

本版积分规则

QQ|捐赠本站|Archiver|关于我们 About Us|群聊|Fcode

GMT+8, 2021-9-24 07:06

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

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