类型限定符
此示例说明如何将 const
和 volatile
关键字应用于一个表示参数数据的全局变量。
C 构造
const volatile double myParam = 9.8;
过程
1.打开示例模型 ex_const_volatile
。
open_system('ex_const_volatile');
2.在模型中,选择 Gain 模块。在属性检查器中,将增益参数的值设置为 myParam
。
3.点击参数值旁边的操作按钮(具有三个纵点的按钮),然后选择创建。
myParam = Simulink.Parameter(9.8); set_param('ex_const_volatile/Gain','Gain','myParam');
4.在“创建新数据”对话框中,将值设置为 Simulink.Parameter(9.8)
。点击创建。A Simulink.Parameter
对象 myParam
出现在基础工作区中。Gain 模块使用该对象来设置“增益”参数的值,在本例中为 9.8。
5.在代码生成选项卡上,点击在 Coder App 中配置按钮。在代码映射编辑器中,将存储类设置为 ConstVolatile
。或者,要仅应用其中一个关键字,请使用存储类 Const
或 Volatile
。
myParam.StorageClass = 'ConstVolatile';
6.要编译模型并生成代码,请按 Ctrl+B。
evalc('slbuild(''ex_const_volatile'')');
结果
生成的源文件 ex_const_volatile.c
通过使用 const
和 volatile
关键字定义 myParam
。
file = fullfile('ex_const_volatile_ert_rtw','ex_const_volatile.c'); coder.example.extractLines(file,'/* Definition for custom', ... 'const volatile real_T myParam = 9.8;',1,1);
/* Definition for custom storage class: ConstVolatile */ const volatile real_T myParam = 9.8; /* Referenced by: '<Root>/Gain' */