|
[Fortran] 纯文本查看 复制代码 03 | CHARACTER ( LEN = 10 ) :: NAME |
04 | REAL :: HEIGHT , WEIGHT |
07 | TYPE ( PERSON ) , POINTER :: P |
13 | TYPE ( PPERSON ) :: P ( : ) |
19 | IF ( P ( J ) % P % HEIGHT < P ( I ) % P % HEIGHT ) THEN |
34 | TYPE ( PERSON ) , TARGET :: P ( 3 ) = ( / PERSON ( "CHEN" , 180.0 , 56.0 ) , & |
35 | PERSON ( "HUANG" , 190.0 , 75.0 ) , & |
36 | PERSON ( "LIU" , 177.0 , 89.0 ) / ) |
37 | TYPE ( PPERSON ) :: PT ( 3 ) |
43 | WRITE ( * , "(3(A8,F6.1,F5.1/))" ) ( PT ( I ) % P , I = 1 , 3 ) |
这里子程序里的,TYPE(PPERSON) :: P (:),为什么可以使用P (:)。
在这里TYPE(PPERSON)并不是个指针,为什么可以使用这种类似可变数组的表达。
而在主程序里TYPE(PPERSON) :: PT(3)就不能使用PT(:)了。
请前辈们看看。
|
|