Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Fortran 具有可配置实精度的调用函数 目标是:_Fortran_Gfortran - Fatal编程技术网

Fortran 具有可配置实精度的调用函数 目标是:

Fortran 具有可配置实精度的调用函数 目标是:,fortran,gfortran,Fortran,Gfortran,具有可配置工作精度的功能 当我尝试这个: 我得到: 错误:位于(1)的参数“b”中的类型不匹配;将实(4)传递给未知 为什么这不起作用?我怎样才能实现我的目标?是的,或者更确切地说是不,这不起作用,不怎么可能。“英特尔Fortran编译器”对此行抱怨: real(kind=wp) :: b,c,D 那 它对real(kind=wp)、维度(2)也提出了同样的抱怨:解决方案。这是Fortran的一个根深蒂固的特性 要做您想要做的事情,您必须按照以下几行定义一个通用接口 interface alg

具有可配置工作精度的功能

当我尝试这个: 我得到: 错误:位于(1)的参数“b”中的类型不匹配;将实(4)传递给未知


为什么这不起作用?我怎样才能实现我的目标?

是的,或者更确切地说是不,这不起作用,不怎么可能。“英特尔Fortran编译器”对此行抱怨:

real(kind=wp) :: b,c,D

它对
real(kind=wp)、维度(2)也提出了同样的抱怨:解决方案。这是Fortran的一个根深蒂固的特性

要做您想要做的事情,您必须按照以下几行定义一个通用接口

interface algoritme1
    procedure :: algoritme1_sp, algoritme1_dp
end interface
并为这两个过程编写代码。然后,编译器可以确定函数签名调用哪个函数;大概一个会有
sp
参数,另一个会有
dp
参数


你可能会认为这一切都意味着Fortran不做泛型过程,我将把这个问题留给智者和语言挑剔者。在Fortran中搜索
通用编程是值得的;即使在这里,关于如何更好地避免编写程序员认为(与编译器不一致的)是“相同”代码的多个实现,也有一些技巧和提示。

是的,或者更确切地说是不,这是行不通的,不可能的。“英特尔Fortran编译器”对此行抱怨:

real(kind=wp) :: b,c,D

它对
real(kind=wp)、维度(2)也提出了同样的抱怨:解决方案。这是Fortran的一个根深蒂固的特性

要做您想要做的事情,您必须按照以下几行定义一个通用接口

interface algoritme1
    procedure :: algoritme1_sp, algoritme1_dp
end interface
并为这两个过程编写代码。然后,编译器可以确定函数签名调用哪个函数;大概一个会有
sp
参数,另一个会有
dp
参数

你可能会认为这一切都意味着Fortran不做泛型过程,我将把这个问题留给智者和语言挑剔者。在Fortran中搜索
通用编程是值得的;即使在这里,关于如何更好地避免编写程序员认为(与编译器不一致)是“相同”代码的多个实现,也有一些技巧和技巧