fortran子程序(子函数)调用MPI库函数遇到的问题。

发布于 2022-09-01 06:00:58 字数 609 浏览 17 评论 0

我在写程序发现一个问题,就是在主函数里调用MPI的库函数都会正确执行,但是如果在子函数或者子程序(subroutine)里调用MPI的库函数的话就会各种编译报错。比如我在一个子程序里调用:

MPI_REDUCE(a,b,1,MPI_INTEGER,MPI_SUM,0,MPI_COMM_WORLD,ierr)

编译器就会报错如下:

error #6404: This name does not have a type, and must have an explicit type.   [MPI_INTEGER]
error #6404: This name does not have a type, and must have an explicit type.   [MPI_SUM]
error #6404: This name does not have a type, and must have an explicit type.   [MPI_COMM_WORLD]

大致的意思就是可能编译器认不出这些变量的意思。但是在主程序里调用这个函数的话就不没有问题,vs2012里的项目设置是都把相应的库包括进去了,所以想问问大神们这个问题该怎么解决。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

深居我梦 2022-09-08 06:00:58

子程序也需要
use mpi

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文