Fortran中function,subroutine, interface和module的简单使用
代码运行在simply fortran2下,复制,粘贴可直接运行看效果
!!!!!-------------------
! Fortran中函数分两类:子程序(subroutine)和自定义函数(function)。
! 自定义函数本质上就是一般数学上的函数,一般要传递自变量给自定义函数,返回函数值。
! 子程序不一定是这样,可以没有返值也可以多个返回值。
! func能做到的事,sub一定能做到。
! 传递参数要注意类型的对应,这跟C是一样的。
!!!!!-------------------!!!!!!!!!
! Module不是函数。它用于封装程序模块,一般是把具有相关功能的函数及变量封装在一起
! 。用法很单,但能提供很多方便,使程序变得简洁,比如使用全局变量不必每次都声明一长串,
! 写在odule里调用就行了。Module一般写在主程序开始之前。
!!!!!!!!!program helloworld
use opModule
! 在主程序或函数中使用时,需要在声明之前先写上一行:
! use module_name.
implicit nonereal(kind = 4):: a = 2.0, b = 3.0, add_result = 0.0interface ! 声明函数调用接口,sub无需声明可直接调用real(kind=4) function add_func(a, b)implicit nonereal(kind=4) :: a, bend function add_func
end interface! 注意sub的调用方式 call subname(╬aram1, ...)call add_sub(a, b, add_result) Print *, "Hello World!", add_result, add_func(a, b)call prtHi()print*, M_add_func(2.3, 4.3), M_resultend program helloworldsubroutine add_sub(a, b, add_result)
implicit none
real(kind=4) :: a, b, add_resultadd_result = a + b;end subroutine add_subreal(kind=4) function add_func(a, b)
implicit none
real(kind=4) :: a, badd_func = a + bend function add_func!!!!!!
! Module中有函数时必须在contains命令之后(即在某一行写上contains然后下
! 面开始写函数)。并且module中定义过的变量在module里的
! 函数中可直接使用,函数之间也可以直接相互调用(包括主程序或其他包含module的子函数中),
! 连module中的自定义函数在被调用时也不用先声明。
!!!!!!
module opModulereal(kind = 4) :: M_result
containssubroutine prtHi()implicit noneprint *, 'hello fortran, hello 2016.11.16 10:55'end subroutine prtHireal(kind=4) function M_add_func(a, b)implicit nonereal(kind=4) :: a, bM_result = a + bM_add_func = M_resultend function M_add_funcend module opModule
Fortran中function,subroutine, interface和module的简单使用相关推荐
- fortran语言和python_如何在Fortran中调用Python
Python是机器学习领域不断增长的通用语言.拥有一些非常棒的工具包,比如scikit-learn,tensorflow和pytorch.气候模式通常是使用Fortran实现的.那么我们应该将基于Py ...
- 今天還是和大家聊點基本功,就是“如何在DLL中活用Interface” DATE :2004-05-21
聊點基本功,就是"如何在DLL中活用Interface" <Code 1> {--------------------------------------------- ...
- fortran中类型
- 由于 GNU 的 Fortran 和 C 语言二者的函数彼此可以直接相互调用,所以混合编程可以非常容易地实现.只要你足够仔细,确保函数调用时传递的参数类型正确,函数就可以在两种语言间来回调用,就像 ...
- php中abstract和interface的区别
转载链接 1.https://www.cnblogs.com/songanwei/p/9389005.html#!comments 2.https://blog.csdn.net/qq_2263016 ...
- 介绍Unreal Engine 4中的接口(Interface)使用C++和蓝图
这个教程是从UE4 Wiki上整理而来. 在C++中直接使用Interface大家应该很熟悉.只是简单先定义一个个有虚函数的基类,然后在子类中实现相应的虚函数.像这样的虚函数的基类一般概念上叫接口.那 ...
- python中function函数的用法_Python中Function(函数)和methon(方法)
在Python中,对这两个东西有明确的规定: 函数function -- A series of statements which returns some value toa caller. It ...
- 如何用mshtml获得Javascript中function的返回值[mshtml]
marginwidth="0" marginheight="0" src="http://218.16.120.35:65001/PC/Global/ ...
- JAVA中Function的使用
JAVA中Function的使用 一.方法介绍 参数类型 方法介绍 源码 二.demo 参考: https://blog.csdn.net/boyan_HFUT/article/details/996 ...
- Java8中Function函数式接口详解及使用
文章目录 1.函数式接口 1.1允许定义默认方法 1.2允许定义静态方法 1.3允许定义java.lang.Object的public方法 1.4已有函数式接口 2.Function函数 2.1Fun ...
最新文章
- Android Chart框架 MPAndroidChart 坐标轴设置
- matlab计算流函数,hanyeah
- linux重启网卡的命令行,linux系统重启网卡命令
- 软件正版,我们是缺钱还是缺意识
- win10 + Terminal + WSL+ oh-my-zsh 配置漂亮实用的windows终端及配置ubuntu不加.exe打开windows程序
- Facebook告诉我们如何构建网站
- 6.旋转数组的最小数字
- Atitit 关于建立知识库体系的方案
- php数据库根据手机号获取归属地,PHP通过API获取手机号码归属地
- 计算机思维导论在线作业答案,大学计算机计算思维导论第讲习题及解析.pdf
- linux连win7打印机,如何在CentOS 6.5下安装Win7下的共享打印机服务
- 关于坐标系(大地坐标、平面坐标、投影、北京54、西安80、WGS84)的一些理解
- 网吧模式一台服务器拖显示器,摆500台机器太傻 网咖显示器如何配置?
- 通过大白菜u盘启动工具备份/还原/重装/激活系统/修复引导 实操教程(上)
- 用U盘制作PE启动盘安装Windows10系统
- Bing必应搜索是什么?
- Java 学习笔记 - AutoCloseable、Closeable
- 打印一个N*N的方阵,N为每边字符的个数( 3〈N〈20 ),写出来真是泪牛满面啊。
- python decimal_实例详解Python模块decimal
- 饿了么第一届信息安全峰会
热门文章
- 美版华硕TM-AC1900配置AiMesh
- MySQL数据库学习(6) -- 表查询关键词
- ROM、RAM、DRAM、SRAM和FLAS…
- 做软文发布需要注意哪些细节?
- Netscape中的keyCode和srcElement
- OpenHarmony应用开发之如何创建DAYU200预览器
- 天气类APP产品微体验(墨迹天气、中央天气预报、雅虎天气、2345天气王)
- python 创意项目_针对python开发人员的10个很棒的python项目创意
- Python学员管理系统进阶版
- html中i标签控制图标大小,直接使用i标签 class加入 material-icons属性