m文件如下:其中a,b,y均可是矩阵
function y=shili(a,b)
y=a+b;用matcom编译成dll,c的申明如下
int DLLX _stdcall shili1_v(char* emsg, int nlhs, Mm* plhs[], int nrhs, const Mm* prhs[])在delphi里想把两个数组a,b传进去,然后得到结果数组y,
请问怎么在delphi里实现。谢谢
function y=shili(a,b)
y=a+b;用matcom编译成dll,c的申明如下
int DLLX _stdcall shili1_v(char* emsg, int nlhs, Mm* plhs[], int nrhs, const Mm* prhs[])在delphi里想把两个数组a,b传进去,然后得到结果数组y,
请问怎么在delphi里实现。谢谢
解决方案 »
- 读取ie默认主页代码 dephi-javascript
- 文件图标设置
- 请问在DELPHI中如何将TIF格式转换成JPG格式
- [抢分贴]一年一度的4.1到了
- 有没有使用SQLite数据库的?
- ---------------也许不该放到这里,但我真的需要直接读取硬盘上的数据块--------
- 如何捕获局域网哪个计算机对服务器上的共享目录进行了文件操作
- [DELPHI+ADO+SQL2000下的主從表問題],指點即送分
- sql的问题?
- CodeDuDu(都都) 来拿分!刚才非常感谢!
- Excel200工坐表中有几个checkbox,如何用delphi控制他们的状态。
- 关于隐藏MDI子窗口的时候出现的闪烁问题
在C中可以用它的文件的
参数以后,调用就无法达到想要的效果了,真不知这个参数怎么设置,
sigh!
1)我看你申明了mm类型,只要你在delphi中用同样的类型去匹配,是可以做到的,比如 你的mm中有int,你就用Longint来代替,
2)关于数组的传递: char*可以转换成pchar;mm[],如果你在dll中装配一下,完全可以避免传数组的问题。delphi中只传递单个mm,在dll中组成数组,再用一个start_DLLX _stdcall shili1_v来触发你的动作,不就可以了吗?如果一定要传递数组,可以传数组指针。你可以参照一下一下代码使用数组指针:
procedure TForm1.Button1Click(Sender: TObject);
type
Tb = array[0..100] of byte;
Pb= ^TB;
var
b: tb;
bp :pb;
begin
b[0] := 12;
bp := @b;
showmessage(inttostr(bp^[0]));
end;
很多的工程软件 比如matlab,UG等都是 提供了c++的接口儿没有
提供delphi或者vb的接口 请问问题怎么解决呢?