指定Dwork向量的名称
const char_T *ssSetDWorkName(SimStruct *S, int_T vector, char_T *name)
年代
表示s -功能块的SimStruct。
向量
功向量的索引,其中索引是0
,1
,2
,...
ssGetNumDWork (S) 1
.
的名字
功向量的名称。
输入的DWork向量的名称的名字
.
用在mdlInitializeSizes
或在mdlSetWorkWidths
为指定的Dwork向量指定名称。的金宝app®编码器™Product使用这个名称在生成的代码中标记工作向量。如果不指定名称,则金宝app仿真软件编码器product在代码中为DWork向量生成一个名称。有关使用DWork向量的更多信息,请参见如何使用DWork向量.
请注意
ssSetDWorkName
仅存储指向名称字符向量的指针。因此,名称字符向量必须在持久内存中;它不能是一个局部变量。
C, c++
下面的示例动态地生成和设置多个DWork向量的名称。
#define MDL_SET_WORK_WIDTHS #if define (MDL_SET_WORK_WIDTHS) static void mdlSetWorkWidths(SimStruct *S) {int_T i;/*基于输入宽度的DWork向量数量*/ ssSetNumDWork(S, ssgetinputporttwidth (S,0));/* Malloc空间存储DWork向量的名称*/ name=(char_T *) Malloc (sizeof(char_T)*ssGetNumDWork(S)*16);For (i = 0;我< ssGetNumDWork(年代);i++) {sprintf(&name[i*16], "DWork%d", i+1);ssSetDWorkName(年代,我的名字(我* 16));}} #endif /* MDL_SET_WORK_WIDTHS */
看s函数sfcndemo_sfun_rtwdwork
查看使用DWork向量的完整示例。