首页 > 解决方案 > 使用 CodeBlocks IDE 读取 Fortran 文件时出现问题

问题描述

最近,我开始学习 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

我真的不知道如何处理这个问题。代码对我来说似乎很简单,而且我以前从未见过此错误消息,所以我不知道它是什么意思。

提前感谢您的回答。

标签: fortrancodeblocks

解决方案


谢谢大家的回复。实际上导致问题的原因是我使用的是旧编译器。因此,当我下载最后一个版本时,它一切正常,无需更改代码中的任何行。


推荐阅读