Fortran语言基础 - 图文

2026/1/25 6:13:33

山东建筑大学

a=1 b=2

call ShowCommon() stop end

subroutine ShowCommon() implicit none

integer :: num1, num2

common num1, num2 ! 定义a,b是全局变量中的第1及第2

个变量

write(*,*) num1, num2 return end

程序执行结果:

1 2 注释:

(1) 取用全局变量,是根据他们声明时的相对位置关系,而不是变量名

称对应。

(2) 由于全局变量是使用地址对应的方法在程序中共享数据,在子程序

中若仅使用部分全局变量,也必须声明全部全局变量。这在全局变量很多的情况下是非常麻烦的,解决的方法是,把变量归类放在彼此独立的COMMON中。 (3) 全局变量不能用DATA赋值;

6.3.2 BLOCK DATA命令

全局变量不能直接在子程序或主程序中使用DATA来设值初值。全局变量的赋值采用BLOCK DATA语句。其结构为

BLOCK DATA NAME ! NAME可以省略 IMPLICIT NONE INTEGER …

49

数值分析程序设计——Fortran基础

REAL … COMMON …

COMMON /GROUP1/… DATA VAR1,VAR2, … …. ....

END BLOCK DATA NAME 看一个实例:

program ex0812 implicit none integer :: a,b

common a,b ! a,b放在不具名的全局变量空间中 integer :: c,d

common /group1/ c,d ! c,d放在group1的全局变量空间中 integer :: e,f

common /group2/ e,f ! e,f放在group2的全局变量空间中 write(*,\ stop end block data implicit none integer a,b

common a,b ! a,b放在不具名的全局变量空间中 data a,b /1,2/ ! 设定a,b的初值 integer c,d

common /group1/ c,d ! c,d放在group1的全局变量空间中 data c,d /3,4/ ! 设定c,d的初值 integer e,f

common /group2/ e,f ! e,f放在group2的全局变量空间中 data e,f /5,6/ ! 设定e,f的初值

50


Fortran语言基础 - 图文.doc 将本文的Word文档下载到电脑
搜索更多关于: Fortran语言基础 - 图文 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219