我需要一些帮助来在Linux上的Fortran中初始化复杂的1-D数组
complex(kind=dp),dimension(8),public:: zc = (/(0.0_dp,0.0_dp) ,(-3.496991526333D001,0.0_dp) ,
( -3.944481647220D+000 , 0.0_dp ) , (-4.294180799072D+000 , 0.0_dp ) ,
(-4.294180799072D+000, -1.0_dp) , ( -3.944481647220D+000,-1.0_dp ) ,
(-3.496991526333D- 001,-1.0_dp ) , (0.0_dp,-1.0_dp)/) ! z computational
上述声明适用于Fortran Power Station(适用于Windows),但不适用于Linux。它出现以下错误
Missing ')' in statement at or before (1)
注意:'1'是逗号b / w第3和第4复数no。 该计划的扩展名为.f90
答案 0 :(得分:2)
您必须使用正确的续行方式。如果您使用固定格式(通常为.f
,.form
),请在新行的第六列放置任何字符,然后放置您的语句。你可能会使用它,否则-3.496991526333D- 001
不起作用,因为空格在自由形式中很重要。但!
表示自由形式的评论。如果您使用免费表格,请更正该号码。请务必不要以固定格式通过第72列。
例如:
complex(kind=dp),dimension(8),public:: zc = (/(0.0_dp,0.0_dp) ,(-3.496991526333D001,0.0_dp) ,
* ( -3.944481647220D+000 , 0.0_dp ) , (-4.294180799072D+000 , 0.0_dp ) ,
* (-4.294180799072D+000, -1.0_dp) , ( -3.944481647220D+000,-1.0_dp ) ,
* (-3.496991526333D-001,-1.0_dp ) , (0.0_dp,-1.0_dp)/)
C z computational
在自由格式(通常为.f90
)中,使用行的&
继续下一行。
complex(kind=dp),dimension(8),public:: zc = (/(0.0_dp,0.0_dp) ,(-3.496991526333D001,0.0_dp) , &
( -3.944481647220D+000 , 0.0_dp ) , (-4.294180799072D+000 , 0.0_dp ) , &
(-4.294180799072D+000, -1.0_dp) , ( -3.944481647220D+000,-1.0_dp ) , &
(-3.496991526333D-001,-1.0_dp ) , (0.0_dp,-1.0_dp)/) !z computational
您应该在任何Fortran教程中阅读有关正确的soource表单的更多信息。