步骤:

1、在 matlab 中,将 .m 文件编译成 .c 文件;

2、用 bcc32 编译 .c 文件,得到 obj 文件;

3、在 Delphi 中,调用 obj 文件;

步骤1、在 matlab 中,将 .m 文件编译成 .c 文件

a).编写test.m文件

function [c,d] = test(a,b)

c = a + b;

d = a * b;

b).运行matlab2014a,在工作界面输入coder,在Matlab Coder Project 新建工程对话框中输入工程名称 test

76709c847d9fafb62b97a5dddfad092e.bmp

在窗体右边的工程中,添加test.m文件到工程中,

864b099cb55612e5b924851dd8bff9e4.bmp

添加完test.m文件之后,选择函数输入的参数类型:

d805cfaf46a22d089d013e3ba3028f3a.bmp

切换到 Build 页,进行设置

110a5b3f64bdfcbae7c49ef884ef2e8f.bmp

最后点击编译。

会在你的工程目录下生成.c文件。

步骤1结束。

步骤2、用 bcc32 编译 .c 文件,得到 obj 文件

在.c文件目录下新建一个bat文件,内容为:(路径为你机器上实际路径)

X:\...\DXE8\bin\bcc32 -c -nBCCOBJ -IX:\...\DXE8\Include;X:\...\DXE8\Include\Windows\crtl rt_nonfinite.c

X:\...\DXE8\bin\bcc32 -c -nBCCOBJ -IX:\...\DXE8\Include;X:\...\DXE8\Include\Windows\crtl rtGetInf.c

X:\...\DXE8\bin\bcc32 -c -nBCCOBJ -IX:\...\DXE8\Include;X:\...\DXE8\Include\Windows\crtl rtGetNaN.c

X:\...\DXE8\bin\bcc32 -c -nBCCOBJ -IX:\...\DXE8\Include;X:\...\DXE8\Include\Windows\crtl test.c

X:\...\DXE8\bin\bcc32 -c -nBCCOBJ -IX:\...\DXE8\Include;X:\...\DXE8\Include\Windows\crtl test_initialize.c

X:\...\DXE8\bin\bcc32 -c -nBCCOBJ -IX:\...\DXE8\Include;X:\...\DXE8\Include\Windows\crtl test_terminate.c

pause

保存

在同目录下建立 BCCOBJ 目录

运行bat文件

在 BCCOBJ目录下,将会生成6个obj文件。

步骤2结束。

步骤3、在 Delphi 中,调用 obj 文件

在Delphi中引用这些 obj 文件,就可以使用了。

{$LINK bccobj\test_initialize.obj}

{$LINK bccobj\test_terminate.obj}

{$LINK bccobj\test.obj}

{$LINK bccobj\rt_nonfinite.obj}

{$LINK bccobj\rtGetInf.obj}

{$LINK bccobj\rtGetNaN.obj}

定义要使用的函数:

procedure _test_initialize(); cdecl; external;

procedure _test_terminate(); cdecl; external;

procedure _test(const a, b: Integer; var c, d: Integer); cdecl; external;

调用

var

a, b: Integer;

begin

_test_initialize();

_test(2, 3, a, b);

_test_terminate();

Caption := Format('%d %d', [a, b]);

end;

步骤3结束。

原文:http://blog.csdn.net/dbyoung/article/details/44959467

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐