我可以帮你进行翻译。以下是需要翻译的内容:
创建foo.dll(fortran dll)后,以下是我用Visual Studio 2012编写的C++代码,用于加载Fortran DLL并调用Fortran代码中的SUB1函数。
在运行时,我遇到了以下错误:
程序无法启动,因为libgcc_s_dw2-1.dll在您的计算机中丢失。 尝试重新安装程序以解决此问题。
这是从C++调用dll的正确方法吗? 我对这个Fortran dll非常陌生。请帮助我解决这个问题。
我想在C++代码中加载一个Fortran dll,并调用Fortran dll中的函数。
以下是代码:
SUBROUTINE SUB1()
PRINT *, 'I am a function '
END
创建foo.dll(fortran dll)后,以下是我用Visual Studio 2012编写的C++代码,用于加载Fortran DLL并调用Fortran代码中的SUB1函数。
#include <iostream>
#include <fstream>
#include <Windows.h>
using namespace std;
extern "C" void SUB1();
typedef void (WINAPI *PGNSI)(LPSYSTEM_INFO);
int main(void)
{
LoadLibrary(L"foo.dll");
PGNSI pGNSI = (PGNSI) GetProcAddress(GetModuleHandle(TEXT("foo.dll")),"SUB1");
return 0;
}
在运行时,我遇到了以下错误:
程序无法启动,因为libgcc_s_dw2-1.dll在您的计算机中丢失。 尝试重新安装程序以解决此问题。
这是从C++调用dll的正确方法吗? 我对这个Fortran dll非常陌生。请帮助我解决这个问题。