Получите максимальную длину типа данных String
size_t ssGetStringDataTypeMaxLength(SimStruct *S,int dataType)
S
SimStruct, представляющий Блок s-function.
dataType
ID типа данных.
Значение типа size_T
, указание на максимальную длину строки.
0, если строка не имеет никакой максимальной длины.
ssGetStringDataTypeMaxLength
определяет максимальную длину (size_t
) из строки. Строка не имеет никакой максимальной длины если ssGetStringDataTypeMaxLength
0
.
Чтобы скомпилировать S-функцию, соединитесь против libmwsimulink
библиотека, например:
mex -lmwsimulink myStrings.c
C, C++
Этот пример получает максимальную длину строки.
... { if(ssGetStringDataTypeMaxLength(S, ssGetInputPortDataType(S, 0)) == 0) ssSetOutputPortDataType(S, 0, ssRegisterStringDataType(S, 0)); else ssSetOutputPortDataType(S, 0, ssRegisterStringDataType(S, ssGetStringDataTypeMaxLength(S, ssGetInputPortDataType(S, 0)) + mxGetN(INSSTR))); } ...
ssGetInputStringLength
, ssIsStringDataType
, ssReadInputString
, ssRegisterStringDataType
, ssWriteOutputString