write
函数确实打印了列之间有很多空格的参数,这最终给了我一个非常大的文件。那么我如何修剪输出,以便像一个空格。
open(unit=1,file='gfortran.txt')
write(1,ERR=1001)1,2,3
答案 0 :(得分:5)
您需要使用Fortran的编辑描述符来控制输出格式。如果你只想在一行上写3个整数,那么你可以使用
write(1,fmt='(3i2)',err=1001) 1, 2, 3
将整数写入输出文件中的2个字符的宽字段。您应该熟悉的编辑描述符有很多变体。几个例子:
fmt='(i4.2)' ! 1 integer is written into a 4-character wide field, with at least 2 digits so a leading 0 is written if necessary
fmt='(6f9.4)' ! 6 reals are written into 9-character fields, with 4 digits after the decimal point
除此之外还有更多内容,您的编译器文档将解释所有内容。
答案 1 :(得分:3)
除了High Performance Mark所写的内容之外,这只是一个解释性评论。如果未在WRITE
语句中提供显式格式说明符,则使用所谓的列表定向输出。每个Fortran处理器(用于编译器的Fortran字)可以自由选择一种输出格式,以保证列表中的每个元素都将完整打印。这通常会导致使用非常宽的(和编译器相关的)字段。