Visual Fortran 高级编程技术 2 - 核能革新 ChinaNet
热图推荐
    查看: 7730|回复: 0
    打印 上一主题 下一主题

    Visual Fortran 高级编程技术 2

    [复制链接]

    31

    主题

    31

    帖子

    95

    积分

    注册会员

    Rank: 2

    积分
    95
    跳转到指定楼层
    楼主
    发表于 2015-4-8 10:32:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    [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
    回复

    使用道具 举报

      关注我们
    • 微信公众号:
    • NuclearNet
    • 扫描二维码加关注

    Powered by Discuz! X3.2 © 2001-2013 Comsenz Inc.

    联系我们|网站声明|中国核网-核能领域第一垂直门户网站

    快速回复 返回顶部 返回列表