怎样用Matlab调用已有的C语言程序

怎样用Matlab调用已有的C语言程序,第1张

1.准备好C语言程拿旅轮序,清楚C语言的入口函数

2.编写mexfunction函数。mexfunction函数为C语言与MATLAB语言的接口函数。调用实例在mylinedetect.c文件中镇咐.在MATLAB中调用mex指令编译相关文件,将C语言编译为MEX文件。

3.编译完成后,生成mylinedetect.mexw32或mylinedetect.mexw64文件,此文件即mex文件,用于MATLAB与C语言接口函数.

4.编译完成之后,编写MATLAB函数,调用MEX文件。以MEX文件的形式调用编译完成的C语言函数[o1,o2]=mylinedetect(double(X).')......

5.输出结果,上述linedetect函数完成图像中直线消信检测功能,带入MATLAB中调用后形成结果。

首先是将你打算调用的M文件所在的目录选为当前工作目录,例如m文件fx.m放置在E盘根目录下,那么,可以通过,file-setpath-add folders将圆升E盘选为当前工作目录。还可以通过如下方式:

点击红框内,上三角箭头标定的地方

会出现如下,选定你的M文件所在的文件夹,例如我的m问价放置在E:\11文件夹下,找到这个文件夹,点击确定

打开你的M文件,如果你的M文件是函数形式,例如

%示例

function [A,B]=fx(x,y,z)

%下面是函数代码

.....

那么你需要在主窗口中输入函数调用命令,拿上面实例代码为例,需要在主窗口中输入:[A1,B1]=fx(x1,y1,z1),其中x1,y1,z1是你要传递的参数

如果m文件不是函数形式档腔羡,只是一系列运算过程代码,那么直接点击行拍运行即可,运行方法有很多,最简单的是如下:

点击红框区域内的绿色按钮直接便可以运行M文件。

大哥你少了个赋值的运算,你的运行环境没错,就如楼上的,但是你想看的是结果。数据空间中的结果已经运行出来了。

1.你蠢竖纳如果是在command

window中运行你就打:

sum=0

for

i=1:100

sum=sum+i

end

sum

这才是完整的程序,注意纤塌sum后不能加东西,命令窗口才会显示sum的值,也就是ans

2.你如果是在m文件中运行你就打:带没

sum=0

for

i=1:100

sum=sum+i

end

a=sum

然后命令窗口也会出现sum的赋值,最后一步是显示结果用的


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12381380.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存