主要内容

算法设计基础知识

有关代码生成以及所生成代码的行为的算法设计注意事项

通过从 MATLAB® 算法中生成代码,您可以完全在 MATLAB 工作区内设计、实现和测试软件。您可以:

  • 验证您的算法是否适用于代码生成

  • 自动生成高效、可读、紧凑的 C/C++ 代码,消除手动转换并最大限度地减少在代码中引入错误的风险。

  • 根据桌面和嵌入式应用程序的具体要求(如数据类型管理、内存使用量和速度),在 MATLAB 代码中修改您的设计。

  • 测试生成的代码,轻松验证修改后的算法是否与原始 MATLAB 算法等效。

  • 生成 MEX 函数以加速 MATLAB 算法或加快定点 MATLAB 代码的执行速度。

  • 从 MATLAB 代码生成硬件描述语言 (HDL)。

  • 要从 MATLAB 算法生成 C/C++ 或 MEX 代码,您必须安装 MATLAB Coder™ 和 C/C++ 编译器。

函数

coder.allowpcode从 P 代码文件控制代码生成
coder.ceval从生成的代码中调用 C/C++ 函数
coder.cinclude在生成的代码中包括头文件
coder.cstructname在生成代码中命名 C 结构体类型
coder.extrinsic将函数声明为外部函数,并在 MATLAB 中执行它
coder.inline控制生成代码中当前函数的内联
coder.inlineCall在生成的代码中内联被调函数 (自 R2024a 起)
coder.load在代码生成时从 MAT 文件或 ASCII 文件加载常量
coder.nonInlineCall防止在生成的代码中内联被调函数 (自 R2024a 起)
coder.nullcopy在生成的代码中声明未初始化的变量
coder.opaque在生成的代码中声明变量
coder.ref指示要按引用传递的数据
coder.screener确定函数是否适合代码生成
coder.rref指示要按引用传递的只读数据
coder.target确定代码生成目标是否为指定的目标
coder.unroll通过为每次循环迭代生成循环体的副本来展开 for 循环
coder.varsize解决大小不兼容性错误并声明上界
coder.wref指示要按引用传递的只写数据
coder.updateBuildInfo更新 RTW.BuildInfo 编译信息对象

coder.ExternalDependencyInterface to external code
coder.BuildConfig代码生成期间的编译上下文

主题

疑难解答

coder.ceval 的输出类型未知

定义外部 C/C++ 函数调用的输出类型。