最近,我开始学习Fortran编程语言。我在GNU Fortran编译器中使用CodeBlocks IDE。
我在网上的Fortran课程中发现了简单的代码问题,该问题解释了如何从文件读取和写入。
该程序如下:
program main
implicit none
character (len=14) :: c1,c2,c3
integer :: n
real :: T
open(unit=10,file='titi.txt')
read(10,*) c1,n,c2
read(10,*) c3,T
close(10)
open(unit=20,file='toto.txt')
write(20,*) c1,'il est',n,c2
write(20,*)'la',c3,'est de',T,'degres'
close(20)
end
文件“ titi.txt”包含:
bonjour 4 heures
temperature 37.2
控制台中显示的错误消息如下:
Program received signal SIGSEGV: Segmentation fault - invalid memory
reference.
Backtrace for this error:
#0 ffffffff
我尝试使用标志
-g
而且比我使用调试器发现的问题出在使用“读取”的第一行
read(10,*) c1,n,c2
我真的不知道该如何处理。该代码对我来说似乎很简单,我之前从未见过此错误消息,所以我不知道这是什么意思。
感谢您的提前答复。
谢谢大家的回应。实际上导致问题的原因是我使用的是旧的编译器。因此,当我下载最新版本时,所有功能都可以完美运行而无需更改代码中的任何一行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句