定制标准输入

时间:2011-10-19 16:45:51

标签: fortran

我正在编写一个fortran代码,它显示变量的当前值。如果用户想要保留当前值,那么他只需按Enter键,否则他将输入新的字符串。

我的问题是,在阅读新字符串时,我想显示><并且光标应该介于这些字符之间,这样如果他进入偶数空间,它就会被他看到

EG:

  WRITE(*,*)'Current value is 'curVal

在下一行语句中读取新字符。 由于我是fortran的新手,我认为在阅读声明中我们只能输入变量而不是格式化。

EG:

   READ(*,*)curVal

但不是阅读()'>',curval,'<'

我想显示第二个statemnt。你能不能告诉我如何处理这个案例中的读取?

1 个答案:

答案 0 :(得分:2)

我认为这是Fortran语言未提供/保证的终端IO控制级别。您可以执行以下操作,以提供方便的输入,只需按Return / Enter键即可保留当前值:

write (*, '( "Input new value, or press Enter to retain", I0, ". Input: " )', advance="no") current_value
read (*, '(A)' ) string
if (len_trim(string) == 0 ) then
   new_value = current_value
else
   read (string, *) new_value
end if