帮忙调用Fortran95的exe及dll,最多只能填100分就只能填100分了,来看一下,有想法就说

xspace_time 2010-11-19 02:12:26
工具mingw32 fortran95 vc6.0 gcc
由于c和c++在科学计算方面没有fortran方便,使用c/c++调用fortran生成的dll又老是不能兼容,因此想直接调用exe,并且向得到计算后的返回值
想法是这样的:
使用fortran95编写各个子功能函数成为dll动态链接库,使用fortran95编写生成fmain.exe主程序来调用各个fdevide.dll fsub.dll
使用c/c++编写子程序成dll,编写cmian.exe主程序来调用各个cadd.dll cmutiply.dll
使用c++编写一个主程序,来调用c/c++生成的main.exe或者fortran生成的fmain.exe并向其传递参数指令执行fadd.dll,执行完成后返回执行的结果给主程序使得主程序可以将结果作为参数传递给下一个函数执行命令
写一个尽量简单的例子,尽量使用简单点的c语言,由于fortran不熟练,就没发源码
只c的写了一点
//csub.dll
int sub(int m,int n)
{
return m-n;
}
//cdevide.dll
int devide(int k,int s)
{
return k/s;
}
//cmain.exe
int main(int n,char *argv[])
{
int sub_r,devide_r;
sub_r=sub(argv[1],argv[2]);
devide_r=devide(argv[3],argv[4]);
}
...全文
77 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xspace_time 2010-11-20
  • 打赏
  • 举报
回复
再给点意见,如何编译使程序的够认识dll函数,关键是使c编译器生成的函数名和定义时相同
luciferisnotsatan 2010-11-19
  • 打赏
  • 举报
回复
函数调用约定不对吧。
jixingzhong 2010-11-19
  • 打赏
  • 举报
回复
调用dll比较合适,应该是函数调用约定不对导致调用异常

5,530

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 模式及实现
社区管理员
  • 模式及实现社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧