Fortran 为什么输出显示为黑色? 操作系统:Windows 10 编译器:XStart 运行程序时的命令:pgf90 prgramname.f90 运行程序命令:a.out
我写的程序代码:Fortran 为什么输出显示为黑色? 操作系统:Windows 10 编译器:XStart 运行程序时的命令:pgf90 prgramname.f90 运行程序命令:a.out,fortran,Fortran,我写的程序代码: Program silta implicit none CHARACTER :: Str_1 = " For", Str_2 =" tran", z z = Str_1 // Str_2 // " -90" print *, z end program silta 当我运行这个程序时,没有结果,只有空白。 问题的结果可能是Fortran-90,但如何使其正确打印?这一行 CHARACTER :: Str_1 = " For", Str_2 =" tran", z 声明3个字
Program silta
implicit none
CHARACTER :: Str_1 = " For", Str_2 =" tran", z
z = Str_1 // Str_2 // " -90"
print *, z
end program silta
当我运行这个程序时,没有结果,只有空白。
问题的结果可能是Fortran-90,但如何使其正确打印?这一行
CHARACTER :: Str_1 = " For", Str_2 =" tran", z
声明3个字符变量,每个字符长。因此,您得到的是str1==”
,str2==”
和z
取消设置。那么这条线
z = Str_1 // Str_2 // " -90"
被解释为
z = " " // " " // " -90"
但是只有第一个字符(空格)进入z
。这就是你打印出来时看到的,或者更确切地说,这是你没有看到的,它只是一个空间
回到您的Fortran教程,了解字符长度,也许可以从
CHARACTER(len=8) :: Str_1 = " For", Str_2 =" tran", z
正如VladimirF所评论的,还要学习内在函数trim
,以去除字符变量中的尾随空格。还有其他有用的内在字符串函数,值得您研究。这一行
CHARACTER :: Str_1 = " For", Str_2 =" tran", z
声明3个字符变量,每个字符长。因此,您得到的是str1==”
,str2==”
和z
取消设置。那么这条线
z = Str_1 // Str_2 // " -90"
被解释为
z = " " // " " // " -90"
但是只有第一个字符(空格)进入z
。这就是你打印出来时看到的,或者更确切地说,这是你没有看到的,它只是一个空间
回到您的Fortran教程,了解字符长度,也许可以从
CHARACTER(len=8) :: Str_1 = " For", Str_2 =" tran", z
正如VladimirF所评论的,还要学习内在函数
trim
,以去除字符变量中的尾随空格。还有其他有用的内在字符串函数,值得您研究。尝试TRIM(Str_1)//TRIM(Str_2)//“-90”
,我相信在很多教科书和教程中都有介绍。这与字符(30)
的实验有关。尝试修剪(Str_1)//TRIM(Str_2)//“-90”
也会很好,我相信在很多教科书和教程中都有重复介绍。这与字符(30)
的实验有关。