之前一直听说matlab代码可以转C和C++代码,但是一直都没有时间尝试,最近闲着无聊,就想来试试如何转换,上网查了很多资料,照着做下去,发现都有一些问题,之后自己琢磨了很久,终于将一个很简单的例子给做通了,现在将我在配置过程中遇到的问题以及我的解决方法写出来和大家分享。

  首先是mex -setup命令的配置。很多人在输入mex -setup的时候都显示缺少编译的SDK,这个时候需要我们自己下载安装一个gcc编译器,推荐使用TDM-GCC MINGW,下载地址为https://sourceforge.net/projects/tdm-gcc/?source=typ_redirect。一切采用默认安装,安装完成后需要配置环境变量。变量名为MW_MINGW64_LOC,变量值为C:\TDM-GCC-64(这个是默认安装位置)。重启matlab,再次输入mex -setup,会出现以下的提示:

图  1

大家请注意,上图表示编译器安装成功,很多人到了这一步就不知道如何走下去了,经过我的测试,有以下两种方式可以进入代码转换界面。第一种是在命令行输入coder,自动跳转到matlab coder界面,第二种是在主菜单中选择APP界面,然后点击matlab coder工具箱。

在这之前,有必要创建我们的转换函数文件以及调用该函数的测试脚本文件

mex_test.m

%待转换函数

function c=mex_test(a,b)
c=a+b;
end

%end

test1.m

%测试脚本文件

a=1;
b=2;
c=mex_test(a,b);

%end

进入工具箱的界面如图2所示,在这里,你需要选择待转换的文件,matlab对转换的文件做了限制,脚本文件时无法转换的,只有函数文件可以转换,也就是你可以将一个funcrion函数封装在M文件中,然后将这个M文件中的函数转换成C以及C++代码。

图 2

在图2选择待转换的M文件(我的是mex_test.m)后,出现以下界面:

图 3

点击图3右下角的next进入下一步,如下图所示。

图 4

在图4中,提示我们需要对输入的参数进行类型定义,有两种方法,一种是自动的,该方法只需要我们写一个调用该函数的脚本程序(test1是我的脚本程序),编辑器会自动识别各个输入参数的类型,如图5所示;另外一种是点击图4蓝标区域,手动指定参数类型。

图 5

点击next,进入下一步,如果采用的是第一种方法来定义参数类型,那么这一步会直接出现图6的图框内容,如果采用的是第二种方法,需要选择我们的测试脚本文件。然后点击check按钮,不出意外应该会通过,如图7所示。

图 6

图 7

点击进入下一步,出现图8所示的图框,选择相应的语言,即可。

好了,基本上大功告成。

matlab coder 工具箱使用教程的更多相关文章

  1. MATLAB地图工具箱学习总结(一)从地图投影说起

    MATLAB地图工具箱学习总结(一)从地图投影说起 前言 本学期地图投影课上,李连营老师建议我们使用MATLAB完成每周的作业.从大二上学期开始接触MATLAB学习数学运算和地理数据处理的我,自然不会 ...

  2. MATLAB 地图工具箱 m_map 的安装和入门技巧(转)

    reference: http://blog.sina.com.cn/s/blog_8fc890a20102v6pm.html   需要用一些地图工具,arcgis懒得装了,GMT(generic m ...

  3. MATLAB地图工具箱学习总结(四)自定义投影

    MATLAB地图工具箱学习总结(四)自定义投影 这是本系列的最后一篇文章,准备给大家讲讲自定义投影怎么做.在做这项作业的时候,自己也是花了不少时间,将所有地图投影源文件都看了一遍,简单分析了一下源代码 ...

  4. MATLAB地图工具箱学习总结(三)地图工具箱的基本知识

    MATLAB地图工具箱学习总结(三)地图工具箱的基本知识 今天想要介绍的是一些比较基础的函数.了解了这些函数,地图投影的基本概念才能真正明白.而要想继续研究MATLAB中有关地图投影的函数,尤其是未来 ...

  5. MATLAB地图工具箱学习总结(二)大圆和恒向线

    MATLAB地图工具箱学习总结(二)大圆和恒向线 今天要和大家谈一谈大圆.恒向线航道的画法.还是先从案例开始说起,再分别介绍相关的函数. 1                    作业案例:地图投影作 ...

  6. MATLAB Coder从MATLAB生成C/C++代码步骤

    MATLAB Coder可以从MATLAB代码生成独立的.可读性强.可移植的C/C++代码. 使用MATLAB Coder产生代码的3个步骤: 准备用于产生代码的MATLAB算法: 检查MATLAB代 ...

  7. MATLAB统计工具箱 转

    D:\Program Files\MATLAB\R2012b\toolbox\stats\stats MATLAB统计工具箱包括概率分布.方差分析.假设检验.分布检验.非参数检验.回归分析.判别分析. ...

  8. 转 举例说明使用MATLAB Coder从MATLAB生成C/C++代码步骤

    MATLAB Coder可以从MATLAB代码生成独立的.可读性强.可移植的C/C++代码. http://www.mathworks.cn/products/matlab-coder/ 使用MATL ...

  9. matlab遗传算法工具箱

    转自http://blog.sina.com.cn/s/blog_5ebcc0240101pnrj.html matlab遗传算法工具箱函数及实例讲解 (2014-01-10 13:03:57)   ...

随机推荐

  1. 剑指Kubernetes 揭秘腾讯云的PaaS技术选型策略

    1.前言 Kubernetes 很火,一大批互联网公司早已领先一步,搭建起专有的 PaaS平台,传统企业们看到的 Kubernetes的趋势,亦不甘落后,在试水的道上一路狂奔-- 虽然,Kuberne ...

  2. Axure RP初学

    制作商品购买页

  3. 小细节,大用途,35 个 Java 代码性能优化总结!

    前言: 代码优化,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用 ...

  4. 控制反转( IoC)和依赖注入(DI)

    控制反转( IoC)和依赖注入(DI) tags: 容器 依赖注入 IOC DI 控制反转 引言:如果你看过一些框架的源码或者手册,像是laravel或者tp5之类的,应该会提到容器,依赖注入,控制反 ...

  5. nodejs安装和卸载

    Ubuntu 上安装 Node.js 方式一:直接安装    一.安装 1.$ sudo apt-get install nodejs2.$ sudo apt-get install npm二.升级 ...

  6. 20155214&20155216 实验二:固件程序设计

    ---恢复内容开始--- 20155214&20155216 实验二:固件程序设计 实验内容及要求 实验二 固件程序设计-1-MDK 实验要求: 1.注意不经老师允许不准烧写自己修改的代码 2 ...

  7. 20162330 实验三 《敏捷开发与XP实践》 实验报告

    2016-2017-2 实验报告目录: 1 2 3 4 5 20162330 实验三 <敏捷开发与XP实践> 实验报告 课程名称:<程序设计与数据结构> 学生班级:1623班 ...

  8. TOTP算法 基于时间的一次性密码

    /** Copyright (c) 2011 IETF Trust and the persons identified as authors of the code. All rights rese ...

  9. bzoj千题计划275:bzoj4817: [Sdoi2017]树点涂色

    http://www.lydsy.com/JudgeOnline/problem.php?id=4817 lct+线段树+dfs序 操作1:access 操作2:u到根的-v到根的-lca到根的*2+ ...

  10. hdu 4553 约会安排

    约会安排 http://acm.hdu.edu.cn/showproblem.php?pid=4553 Time Limit: 2000/1000 MS (Java/Others)    Memory ...