gpt4 book ai didi

fortran - 在fortran90中智能打印整数

转载 作者:行者123 更新时间:2023-12-04 14:19:04 26 4
gpt4 key购买 nike

在几年前对Fortran77进行了简要介绍之后,我正在学习Fortran90。在Fortran中打印整数时,必须指定要保留多少空间来打印整数。考虑这个程序...

implicit none

integer :: i
i = 123

write(*, '(A, I3, A)') "'", i, "'" !3 spaces for output = no padding
write(*, '(A, I5, A)') "'", i, "'" !5 is too many, so output is padded
write(*, '(A, I2, A)') "'", i, "'" !2 is too few, so output is jibberish
write(*, '(A, I:, A)') "'", i, "'" !Default behavior

end program

...将产生以下输出。
'123'
' 123'
'**'
' 123'

当我不知道整数中有多少位数时,如何为整数打印分配正确的空间量?

更新:如果您的编译器兼容F95,则可以使用 I0编辑描述符(即,在上面的示例中,将 '(A, I0, A)'用作 write函数的第二个参数。谢谢@janneb!

最佳答案

使用I0编辑描述符。好吧,要成为适用于Fortran 95的学究型IIRC,所以如果您真的严格要求不超过F90,那么我想这将行不通。

关于fortran - 在fortran90中智能打印整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4760600/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com