|
[size=13.63636302947998px]● 语句: [size=13.63636302947998px]
[size=13.63636302947998px]? 属性说明语句[size=13.63636302947998px]
[size=13.63636302947998px]ALLOCATABLE[size=13.63636302947998px]
[size=13.63636302947998px]? 分配语句[size=13.63636302947998px]
[size=13.63636302947998px]ALLOCATE(数组名1(形状描述),数组名2(形状描述),…[STAT=变量 名])[size=13.63636302947998px]
[size=13.63636302947998px]? 释放语句[size=13.63636302947998px]
[size=13.63636302947998px]DEALLOCATE(动态数组名1,动态数组名2,…[STAT=变量名])[size=13.63636302947998px]
[size=13.63636302947998px]● 例子程序1[size=13.63636302947998px]
[size=13.63636302947998px]REAL(8),ALLOCATABLE::X( ,Y( ,Z( [size=13.63636302947998px]
[size=13.63636302947998px]INTEGER(4)::NODE[size=13.63636302947998px]
[size=13.63636302947998px]
[size=13.63636302947998px]READ(*,*) NODE[size=13.63636302947998px]
[size=13.63636302947998px]ALLOCATE (X(1:NODE),Y(1:NODE),Z(1:NODE))[size=13.63636302947998px]
[size=13.63636302947998px]DO I=1,NODE[size=13.63636302947998px]
[size=13.63636302947998px]X(I)=1.0[size=13.63636302947998px]
[size=13.63636302947998px]Y(I)=1.0[size=13.63636302947998px]
[size=13.63636302947998px]Z(I)=I[size=13.63636302947998px]
[size=13.63636302947998px]END DO[size=13.63636302947998px]
[size=13.63636302947998px]DO I=1,NODE[size=13.63636302947998px]
[size=13.63636302947998px]WRITE(*,*) X(I),Y(I),Z(I)[size=13.63636302947998px]
[size=13.63636302947998px]END DO[size=13.63636302947998px]
[size=13.63636302947998px]DEALLOCATE(X,Y,Z)[size=13.63636302947998px]
[size=13.63636302947998px]END[size=13.63636302947998px]
[size=13.63636302947998px]
[size=13.63636302947998px]3) 模块[size=13.63636302947998px]
[size=13.63636302947998px]● 优点:模块是一种在主程序单元之外独立编写的程序单元。模块程序单元内没有可执[size=13.63636302947998px]
[size=13.63636302947998px]行语句,除了说明语句外,最多包含模块过程。主要作用是供其他程序单元引用,即数据[size=13.63636302947998px]
[size=13.63636302947998px]的共享与模块过程的复制。包含了COMMON与INCLUDE的全部功能。[size=13.63636302947998px]
[size=13.63636302947998px]● 语句:[size=13.63636302947998px]
[size=13.63636302947998px]a 模块的编写[size=13.63636302947998px]
[size=13.63636302947998px]MODULE 模块名[size=13.63636302947998px]
[size=13.63636302947998px]类型说明部分[size=13.63636302947998px]
[size=13.63636302947998px][CONTAINS][size=13.63636302947998px]
[size=13.63636302947998px][模块过程1][size=13.63636302947998px]
[size=13.63636302947998px]…[size=13.63636302947998px]
[size=13.63636302947998px][模块过程N][size=13.63636302947998px]
[size=13.63636302947998px]END MODULE [模块名][size=13.63636302947998px]
[size=13.63636302947998px]b 模块的引用[size=13.63636302947998px]
[size=13.63636302947998px]USE 模块1,模块2,…,模块n[size=13.63636302947998px]
[size=13.63636302947998px]本帖转自52MC
|
|