我是靠谱客的博主 拉长钢铁侠,最近开发中收集的这篇文章主要介绍matlab coder 转 c语言,MATLAB Coder从MATLAB生成C/C++代码步骤,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

MATLAB Coder可以从MATLAB代码生成独立的、可读性强、可移植的C/C++代码。

使用MATLAB Coder产生代码的3个步骤:

准备用于产生代码的MATLAB算法;

检查MATLAB代码的兼容性(有些matlab代码语句并不能生成c/c++代码);

产生最终使用的源代码或MEX。

利用MATLAB Coder生成c++代码,并在vs2013中验证:

一个简单的例子,两数相乘:

1、安装matlab2014a或者更新版本;

2、简单生成一个foo.m文件;

function c = foo(a, b)   %#codegen

%This function muliplies a and b

c = a * b

其中,%#codegen可以防止出现警告错误

3、在命令窗口,输入mex -setpu,选中一个存在的编译器;

4、在命令窗口输入coder(图形界面),回车,弹出MATLAB Coder Project对话框;

5、在New选项卡Name中输入一个工程名foo.prj;点击Ok,弹出MATLAB Coder MEX Function对话框;

6、在Overview选项卡中,点击Add files,弹出对话框,选中foo.m打开;

7、单击变量a,选择Define by Example…,弹出MATLAB Coder Define by Example对话框,在MATLAB Expression中输入5,点击OK;同样变量b也进行相应操作,输入6;

8、选中Build选项卡,Output type中选择c/c++ Static Library;选中Generate code only;

9、点击More settings,GeneralàLanguage选择C++;Interface选项中去掉所有选项;Close;

10、点击Build,进行编译;点击View report,弹出Code Generation Report对话框,此时,变量a、b、c会显示相应的变量信息;

11、利用vs2008建立一个控制台应用程序,将生成的相关文件foo.h、foo.cpp、rtwtypes.h、foo_types.h拷到相关目录下并添加到应用程序中;

12、在foo.cpp文件中添加#include “stdafx.h”;

13、test.cpp文件中代码为:

#include "stdafx.h"

#include "foo.h"

#include

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

{

double a = 0.0, b = 0.0, c = 0.0;

cin>>a>>b;

c = foo(a, b);

cout<

return 0;

}

参考:http://blog.csdn.net/fengbingchun/article/details/6793826

Matlab和C++混合编程 参考:http://www.cnblogs.com/lidabo/archive/2012/08/24/2654148.html

转 举例说明使用MATLAB Coder从MATLAB生成C&sol;C&plus;&plus;代码步骤

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

EA生成实体类代码

引言 在做机房个人版重构的时候,就听说了EA是一个强大的软件.仅仅只是知道的时候,已经画完了图,没有怎么用EA其它的功能,所以一直没有见识过罢了.如今到了机房合作了,想到EA一定要好好用,这样能省不少 ...

Matlab与C&sol;C&plus;&plus;联合编程之Matlab以MEX方式调用C&sol;C&plus;&plus;代码(四)

利用Matlab与VC++联合编程,既可在C语言程序中打开Matlab引擎,调用Matlab的ToolBox函数和作图函数,也可在Matlab中调用C代码生成的动态链接库文件,用以加快执行速度.缩短开 ...

Matlab与C&sol;C&plus;&plus;联合编程之Matlab以MEX方式调用C&sol;C&plus;&plus;代码(一)

MEX文件是一种可在matlab环境中调用的C语言(或fortran)衍生程序,mex的编译结果实际上就是一个带输出函数mexFunction 的dll文件. 中文名 mex文件 外文名 MATLAB ...

Matlab与C&sol;C&plus;&plus;联合编程之Matlab以MEX方式调用C&sol;C&plus;&plus;代码(二)

如果我有一个用C语言写的函数,实现了一个功能,如一个简单的函数: double add(double x, double y) { return x + y; } 现在我想要在Matlab中使用它,比 ...

matlab coder 工具箱使用教程

之前一直听说matlab代码可以转C和C++代码,但是一直都没有时间尝试,最近闲着无聊,就想来试试如何转换,上网查了很多资料,照着做下去,发现都有一些问题,之后自己琢磨了很久,终于将一个很简单的例子给 ...

《数字图像处理原理与实践(MATLAB版)》一书之代码Part6

本文系一书之代码系列的Part6,辑录该书第281至第374页之代码,供有须要读者下载研究使用.代码运行结果请參见原书配图,建议下载代码前阅读下 ...

《数字图像处理原理与实践(MATLAB版)》一书之代码Part2

本文系一书之代码系列的Part2(P43~80),代码运行结果请參见原书配图,建议下载代码前阅读下文: 关于

《数字图像处理原理与实践(MATLAB版)》一书之代码Part1

本文系一书之代码系列的Part1(P1~42).代码运行结果请參见原书配图. P20 I = imread('lena.jpg');BW1 = ...

随机推荐

iOS常用第三方开源框架和优秀开发者博客等

博客收藏iOS开发过程好的开源框架.开源项目.Xcode工具插件.Mac软件.文章等,会不断更新维护,希望对你们有帮助.如果有推荐或者建议,请到此处提交推荐或者联系我. 该文档已提交GitHub,点击 ...

&period;Net中Remoting通信机制简单实例

.Net中Remoting通信机制 前言: 本程序例子实现一个简单的Remoting通信案例 本程序采用语言:c# 编译工具:vs2013工程文件 编译环境:.net 4.0 程序模块: Test测试 ...

mysql 相关问题解决

Windows下解决mysql中文乱码问题 在my.ini中, 在[mysqld]下添加 character_set_server = utf8 在[client]下添加 default-charac ...

「2014-2-26」Unicode vs&period; UTF-8 etc&period;

目测是个老问题了.随便一搜,网上各种总结过.这里不辞啰嗦,尽量简洁的备忘一下. 几个链接,有道云笔记链接,都是知乎上几个问题的摘录:阮一峰的日志,1-5 还是值得参考,但是之后的部分则混淆了 Wind ...

开源侧滑菜单SlidingMenu主要方法介绍

SlidingMenu是一个很好使用的侧滑菜单开源项目,它的表现形式类似于DrawerLayout和SlidingDrawer,具体效果如下图所示,左侧为侧滑Menu菜单,右侧黑色部分为内容显示视图C ...

c&num; 高斯模糊

using System; using System.Collections.Generic; using System.Text; using System.Drawing; using Syste ...

深入浅出数据结构C语言版(8)——后缀表达式、栈与四则运算计算器

在深入浅出数据结构(7)的末尾,我们提到了栈可以用于实现计算器,并且我们给出了存储表达式的数据结构(结构体及该结构体组成的数组),如下: //SIZE用于多个场合,如栈的大小.表达式数组的大小 #de ...

排序算法(sorting algorithm)之 插入排序(insertion sort)

https://en.wikipedia.org/wiki/Insertion_sort loop1: 4,6,1,3,7 -> 4,6,1,3,7 loop2: 4,6,1,3,7 -> ...

face recognition&lbrack;翻译&rsqb;&lbrack;深度学习理解人脸&rsqb;

本文译自

归并排序——Merge Sort

基本思想:参考 归并排序是建立在归并操作上的一种有效的排序算法.该算法是采用分治法的一个非常典型的应用.首先考虑下如何将2个有序数列合并.这个非常简单,只要从比较2个数列的第一个数,谁小就先取谁,取了 ...

最后

以上就是拉长钢铁侠为你收集整理的matlab coder 转 c语言,MATLAB Coder从MATLAB生成C/C++代码步骤的全部内容,希望文章能够帮你解决matlab coder 转 c语言,MATLAB Coder从MATLAB生成C/C++代码步骤所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部