exponenta event banner

ssSetDataTypeZero

Установка нулевого представления типа данных

Синтаксис

int_T ssSetDataTypeZero(SimStruct *S, DTypeId id, void* zero)

Аргументы

S

SimStruct представляет S-функциональный блок.

id

Идентификатор типа данных.

zero

Нулевое представление типа данных, указанного id.

Прибыль

1 (true) в случае успеха. В противном случае возвращает 0 (false) и сообщает об ошибке.

Описание

Задает нулевое представление типа данных, указанного в id кому zero если id является допустимым, размер типа данных задан, а нулевое представление еще не задано. Нулевое представление пользовательского типа данных - это значение, представляющее нуль для этого типа данных. В противном случае этот макрос завершится ошибкой и сообщит об ошибке. Поскольку этот макрос сообщает об ошибке, использовать его не требуется ssSetErrorStatus для сообщения об ошибке. Дополнительные сведения о регистрации пользовательских типов данных см. в разделе Настройка пользовательских типов данных.

Примечание

Этот макрос создает копию нулевого представления типа данных для модуля Simulink ®. Таким образом, ваша S-функция не должна поддерживать оригинал в памяти.

Дополнительные сведения об использовании пользовательских типов данных в S-функциях см. в разделе Настройка пользовательских типов данных.

Языки

C, C++

Пример

В следующем примере регистрируется и устанавливается размер и нулевое представление пользовательского типа данных с именем myDataType.

typedef struct{
	int8_T   a;
	uint16_T b;
}myStruct;

int_T    status;
DTypeId  id;
myStruct tmp;      

id = ssRegisterDataType(S, "myDataType");
if(id == INVALID_DTYPE_ID) return;

status = ssSetDataTypeSize(S, id, sizeof(tmp));
if(status == 0) return;

tmp.a = 0;
tmp.b = 1;
status = ssSetDataTypeZero(S, id, &tmp);
if(status == 0) return;
Представлен до R2006a