用 FORTRAN 编写 DLL,导出 subroutine,可以在别的编程语言中进行调用,很是方便。不过,遇到一些问题会让人恼火,特在这里记录一下。
1. 导出声明,子程序调用
导出的话,只要作如下声明即可。 名称必须与子程序名称相同,否则就找不到了。调用的时候,一律使用大写。
C 语言中使用需要先声明函数原型,可以这么写
1. 导出声明,子程序调用
导出的话,只要作如下声明即可。 名称必须与子程序名称相同,否则就找不到了。调用的时候,一律使用大写。
- !DEC$ ATTRIBUTES DLLEXPORT :: fortfunc
- // For DLL function import.
- #define __DLLIMPORT__ __declspec(dllimport)
- // Compatible for C
- #ifdef __cplusplus
- extern "C" {

本文探讨了如何使用FORTRAN编写DLL,并详细解释了如何创建与C语言兼容的函数接口。示例中展示了如何定义`DEC$ ATTRIBUTES DLLEXPORT`以导出FORTRAN函数,并使用`__DLLIMPORT__`在C侧导入该函数。同时,还展示了一段关于线程局部存储(TLS)的C++代码,强调了线程安全和接口兼容性的重要性。
最低0.47元/天 解锁文章
2022

被折叠的 条评论
为什么被折叠?



