Main Content

指针

当您的手写代码为信号、状态或参数数据分配内存时,您可以生成通过指针访问这些数据的代码。将存储类(如 ImportedExternPointer)应用于模型中的数据项。您的手写代码提供指针定义。

C 构造

extern double *myIn;

过程

1.打开示例模型 ex_pointer

2.打开 Embedded Coder

3.在 C 代码选项卡上,选择代码接口 > 个体元素代码映射

4.在代码映射编辑器的导入选项卡上,将 Inport 模块的存储类设置为 ImportedExternPointer

5.从模型中生成代码。

结果

生成的头文件 ex_pointer.h 声明指针。

/* Imported (extern) pointer block signals */
extern real_T *In1;                    /* '<Root>/In1' */

在生成的源文件 ex_pointer.c 中,在模型单步函数中,算法对指针 In1 进行解引用。

/* Model step function */
void ex_pointer_step(void)
{
  /* Outport: '<Root>/Out1' incorporates:
   *  Inport: '<Root>/In1'
   */
  rtY.Out1 = *In1;
}

相关主题