fortran - 从文本文件读取时,GDB 调试器在 Fortran 90 READ 命令上挂起
问题描述
我使用以下命令将 fortran 文件编译为可执行文件 (sei.exe)。
gfortran -g -fno-align-commons -c Creat2.for Bessel.for Kei.for
gfortran -g -fno-align-commons *.o D12e.for -o sei.exe
然后我通过键入使用 gdb 调试器
gdb sei
然后我键入以下内容以使用文本文件输入运行它
run < input.inp
它开始运行,但随后挂起。
我键入 Ctrl-C 中断它,然后它给我以下结果 错误
[New Thread 9052.0x42e4]
[New Thread 9052.0x32fc]
[New Thread 9052.0x5020]
[New Thread 9052.0x1d6c]
At line 408 of file Input.for (unit = 5, file = 'stdin')
Fortran runtime error: [New Thread 9052.0x5114]
End of file
Error termination. Backtrace:
Program received signal SIGINT, Interrupt.
[Switching to Thread 9052.0x5114]
0x762b1985 in KERNELBASE!CtrlRoutine () from C:\WINDOWS\SysWOW64\KernelBase.dll
第 408 行是我打断它时所在的位置,也就是那行
READ (*,20) TITLE
这是围绕该行的代码
DO 1665 I=1, MAXTIT
READ (*,20) TITLE
IF (LEN_TRIM(TITLE) .EQ. 0)GOTO 1664
READ (TITLE,FMT=30,ERR=1664)DUMY1, DUMY2, DUMY3, DUMY4,
1 DUMY5, DUMY6, DUMY7, DUMY8
任何想法如何停止它挂起,并使用文件输入进行调试?谢谢
解决方案
推荐阅读
- c# - 从 MATHEMATICAL SANS-SERIF BOLD CAPITAL I 将 Unicode 转换为 .NET 中的 ASCII
- python - python pandas或Filter中的管道或函数序列然后汇总(作为dplyr)
- python - 如何在 PyTorch 中提取线性层的权重和偏差?
- python - 如何让已安装的防病毒软件检测到程序?
- r - 有没有办法标准化高峰度的数据?
- php - 从 php 网页下载存储在 CRM 中的文件
- amazon-web-services - 将 Django 应用程序从 heroku (celery/redis) 迁移到 aws fargate/lambda
- javascript - 导出时返回未定义的函数
- jxls - JXLS:如何在 XML 标记中为日期列添加 If 命令条件
- python - 从 JSON 结果中提取位置坐标