修改图的动作语言
Simulink® 模型中的 Stateflow® 图具有一个动作语言属性,该属性定义状态和转移动作的语法。图的画布左下角的图标表示该图的动作语言。
MATLAB® 作为动作语言。
C 语言作为动作语言。
在动作语言之间转换图
要在动作语言之间转换,请更改动作语言图属性。在“图属性”对话框中,选择新动作语言。如果您的图包含动作,Stateflow 会通知您有转换语法模式的选项。
更改默认动作语言
MATLAB 是新 Stateflow 图的默认动作语言语法。要创建使用 C 语言作为动作语言的图,请输入:
sfnew -C要更改新图的默认动作语言,请使用 sfpref 函数。例如,要将 C 设置为新图的动作语言,请输入:
sfpref(ActionLanguage="C");C 到 MATLAB 的语法转换
当您将具有现有动作的图从 C 动作语言更改为 MATLAB 动作语言时,Stateflow 会在图顶部显示通知。点击通知中的转换链接可更新受支持的语法模式。
Stateflow 将以下 C 构造转换为 MATLAB 语法:
数组索引:
A[0][1]变为A(1,2)增量运算:
a++变为a = a+1赋值运算:
a += b变为a = a+b求余运算:
a %% b变为rem(a,b)移位运算:
a >> b变为bitshift(a,-b)按位运算:
a ^ b变为bitxor(a,b)(当选择“启用 C 语言位运算”时)注释:
//和/* */变为%
您必须手动更新: