板上各位高手好,
小弟目前实作时会用BACKSPACE这个功能,
但是在写作上有些逻辑上的问题;
部分程式码如下:
1 open(unit=13,file='tmp1.log',form='formatted',status='old',&
2 & access='sequential',position='append')
3
4 backspace(13)
5
6 do while(.true.)
7
8 read(13,'(a132)',iostat=error,advance='no')line
9
10 if(error/=0)then
11 write(*,*)'read input done!'
12 exit
13 end if
14
15 write(*,*)line
19
20 do loop2=1,2,1
21 backspace(13)
22 end do
23
24 end do
问题点在程式码20~22行处,
我的想法是既然我已经把backspace写在do while当中了,
每读取一次应该就会把读取位置倒回一行,
但是实际上却是需要用到do...end do来包装backspace,
否则程式只会不断得给我读取档案中的最后一行。
请问是否我在写作上的逻辑有问题?
先感谢大家的讨论与建议,谢谢!