变量的LEN_TRIM值

时间:2019-02-28 11:46:45

标签: fortran

我有此Fortran代码,我想在其中确定一维字符变量(dummy)有多少个(有效)条目。因此,我使用LEN_TRIM检查实际条目的长度是否大于0:

program test

implicit none

integer :: x1, x2
character(len=10), dimension(2) :: dummy

dummy(1) = "VALUE"

x1 = LEN_TRIM(dummy(1))
x2 = LEN_TRIM(dummy(2))

end program

x1x2的值均为10。但是,如果我将代码更改为:

x1 = LEN_TRIM('VALUE ')
x2 = LEN_TRIM('   ')

x1变为5,而x2变为0。

为什么两个变体都导致不同的结果?我正在使用英特尔编译器。

1 个答案:

答案 0 :(得分:0)

LEN_TRIM返回指定字符串的长度,忽略尾随空格。因此,在第二个示例中,结果是完全正确的。对于第一个示例,请尝试使用dummy=' '初始化哑元,然后执行dummy(1)='VALUE'