[英]How to read string like a file in Fortran
假設我有一個這樣的字符串:
character(20) :: str="&
&1.2 &
&2. &
&3.32 &
&4.223 &
"
我怎樣才能像文件一樣讀取字符串?
例如,我試過了
program main
implicit none
character(20) :: str="&
&1.2 &
&2. &
&3.32 &
&4.223 &
"
integer i
real a
do i=1,4
read(str,*) a
print*, a
end do
end program main
但我每次只獲得第一行
1.200000
1.200000
1.200000
1.200000
你的字符串中有四個real
s,但你把它讀成一個真正的變量(四次)。 由於每次使用相同的字符串時,總會得到相同的結果。
也許你應該直接將字符串讀入數組(沒有循環):
real a(4)
read(str,*) a(1:4)
(您可以簡單地寫入read(str,*) a
,該范圍僅用於指示a
是一個數組...)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.