将C结构类型命名为全局结构变量gydF4y2Ba
此示例演示如何命名C结构类型,以便在为全局结构生成的代码中使用。gydF4y2Ba
要为结构变量命名要使用的C结构类型,请使用gydF4y2Bacoder.cstructnamegydF4y2Ba
.但是,你不能申请gydF4y2Bacoder.cstructnamegydF4y2Ba
直接到函数内的全局变量。相反,可以用以下方式之一指定C结构类型名称:gydF4y2Ba
在命令行中,使用gydF4y2Ba
coder.cstructnamegydF4y2Ba
创建一个命名C结构类型的类型对象。当你奔跑gydF4y2BacodegengydF4y2Ba
,指定全局变量具有该类型。gydF4y2Ba在MATLAB®Coder™应用程序中,定义和初始化全局变量后,在结构属性对话框中指定C结构类型名称。gydF4y2Ba
还可以使用这些方法为全局单元格数组命名C结构类型。gydF4y2Ba
编写一个使用全局变量的MATLAB函数gydF4y2Ba
编写MATLAB®函数gydF4y2BagetmyfieldgydF4y2Ba
返回字段gydF4y2Ba一个gydF4y2Ba
全局变量gydF4y2BaggydF4y2Ba
.gydF4y2Ba
类型gydF4y2BagetmyfieldgydF4y2Ba
版权所有2018 The MathWorks, Inc. %#codegen global g;Y = g.a;结束gydF4y2Ba
在命令行中指定C结构类型名称gydF4y2Ba
定义并初始化一个全局结构gydF4y2Ba
ggydF4y2Ba
.gydF4y2Ba使用gydF4y2Ba
coder.cstructnamegydF4y2Ba
创建一个类型对象gydF4y2BaTgydF4y2Ba
它具有gydF4y2BaggydF4y2Ba
并命名生成的C结构类型gydF4y2BamytypegydF4y2Ba
.gydF4y2Ba为gydF4y2Ba
getmyfieldgydF4y2Ba
,指定gydF4y2BaggydF4y2Ba
类型是否为全局变量gydF4y2BaTgydF4y2Ba
.gydF4y2Ba
全球gydF4y2BaG G = struct(gydF4y2Ba“一个”gydF4y2Ba5);T = code .cstructname(g,gydF4y2Ba“mytype”gydF4y2Ba);codegengydF4y2Ba配置:自由gydF4y2Ba全局变量gydF4y2Ba{' g ' T}gydF4y2BagetmyfieldgydF4y2Ba
在生成的代码中,gydF4y2BaggydF4y2Ba
有类型gydF4y2BamytypegydF4y2Ba
.gydF4y2Ba
mytype g;gydF4y2Ba
生成的C结构类型gydF4y2BamytypegydF4y2Ba
是:gydF4y2Ba
类型定义struct {double a;} mytype;gydF4y2Ba
在MATLAB Coder App中指定C结构类型名称gydF4y2Ba
打开MATLAB Coder应用程序,并指定要为其生成代码的对象gydF4y2Ba
getmyfieldsgydF4y2Ba
.gydF4y2Ba在gydF4y2Ba定义输入类型gydF4y2Ba页面,点击gydF4y2Ba增加全球gydF4y2Ba.gydF4y2Ba
单击全局变量旁边的字段gydF4y2Ba
ggydF4y2Ba
.然后,单击gydF4y2Ba定义初始值gydF4y2Ba
.gydF4y2Ba输入gydF4y2Ba
结构(' a ', 5)gydF4y2Ba
.gydF4y2Ba指定要用于的C结构类型名称gydF4y2Ba
ggydF4y2Ba
,点击齿轮图标。gydF4y2Ba在“属性”对话框中,旁边gydF4y2BaC类型定义名gydF4y2Ba,输入gydF4y2Ba
mytypegydF4y2Ba
.gydF4y2Ba
或者,如果你定义gydF4y2BaggydF4y2Ba
的类型对象gydF4y2BaggydF4y2Ba
在工作空间中,您可以进入gydF4y2BaggydF4y2Ba
或者将type对象作为初始值。gydF4y2Ba