crafly的个人博客分享 http://blog.sciencenet.cn/u/crafly

博文

g++和fortran90混合编程

已有 6066 次阅读 2010-10-7 18:02 |个人分类:未分类|系统分类:科研笔记

有的时候可能要从C++调用fortran函数,因此,这里实验使用g++和gfortran来一起完成一个程序。使用C++调用fortran程序。
第一步:编写fortran函数
1 subroutine forsub(ivar,rvar)
2     integer ivar
3     real rvar
4     write(*,*)ivar,rvar
5 end
第二步:编写C++主函数
 1 #include <iostream>
 2 extern "C" {
 3    void forsub_(int &i,float &f);
 4 }
 5 int main()
 6 {
 7     int a = 3; 
 8     float b = 2.0;
 9     forsub_(a,b);
10     return 0;
11 }
第三步:编译
$ gfortran -c sub.f90
$ g++ -c main.cpp
$ g++ sub.o main.o -lgfortran
$ ./a.out
就可以看到调用成功。
Fedora13下编译通过
uname -a 输出为:
Linux 主机名 2.6.34.7-56.fc13.i686 #1 SMP Wed Sep 15 03:33:58 UTC 2010 i686 i686 i386 GNU/Linux

https://blog.sciencenet.cn/blog-290274-370629.html

上一篇:ubuntu10.04黑屏
下一篇:中科院地理资源与科学研究所毕业论文latex模板
收藏 IP: .*| 热度|

2 陶依红 杨华磊

发表评论 评论 (1 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-18 08:58

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部