Зарезервированные слова

Ключевые слова генератора резервируются для внутреннего пользования. Не используйте их в моделях как идентификаторы или имена функций. Также избегайте использования зарезервированных слов C в моделях как идентификаторы или имена функций. Если ваша модель содержит зарезервированные слова, генерация кода не завершается, и сообщение об ошибке появляется. Чтобы исправить ошибку, измените свою модель, чтобы использовать идентификаторы или имена, которые не резервируются.

Если вы используете генератор кода, чтобы произвести Код С++, ваша модель не должна содержать Зарезервированные слова для Генерации кода, ни Зарезервированные слова C++.

Примечание

Можно указать дополнительные зарезервированные идентификаторы в среде Simulink®. Для получения дополнительной информации смотрите, Задают Зарезервированные Имена для Сгенерированных Идентификаторов.

C зарезервированные слова

autodoubleintstruct
breakelselongswitch
caseenumregistertypedef
charexternreturnunion
constfloatshortunsigned
continueforsignedvoid
defaultgotosizeofvolatile
doifstaticwhile

Зарезервированные слова C++

catchfriendprotectedtry
classinlinepublictypeid
const_castmutablereinterpret_casttypename
deletenamespacestatic_castusing
dynamic_castnewtemplatevirtual
explicitoperatorthiswchar_t
exportprivatethrow 

Зарезервированные слова для генерации кода

absint8_TMAX_uint8_T*rtInf
asmint16_TMAX_uint16_T*rtMinusInf
boolint32_TMAX_uint32_T*rtNaN
boolean_Tint64_TMAX_uint64_TSeedFileBuffer
byte_TINTEGER_CODEMIN_int8_T*SeedFileBufferLen
char_TLINK_DATA_BUFFER_SIZEMIN_int16_T*single
cint8_TLINK_DATA_STREAMMIN_int32_T*TID01EQ
cint16_TlocalBMIN_int64_Ttime_T
cint32_TlocalCMODELtrue
creal_TlocalDWorkMTuint_T
creal32_TlocalPNCSTATESuint8_T
creal64_TlocalXNULLuint16_T
cuint8_TlocalXdisNUMSTuint32_T
cuint16_TlocalXdotpointer_Tuint64_T
cuint32_TlocalZCEPROFILING_ENABLED UNUSED_PARAMETER
ERTlocalZCSVPROFILING_NUM_SAMPLESUSE_RTMODEL
falsematrixreal_TVCAST_FLUSH_DATA
fortranMAX_int8_T*real32_Tvector
HAVESTDIOMAX_int16_T*real64_T 
id_tMAX_int32_T*RT 
int_TMAX_int64_TRT_MALLOC 
*Не зарезервированный, если вы задаете заменяющий идентификатор.

Заменяющие ключевые слова библиотеки генерации кода кода

Список заменяющих зарезервированных слов библиотеки кода для вашей среды разработки отличается, в зависимости от которого указаны библиотеки. Список доступных заменяющих библиотек кода отличается в зависимости от других установленных продуктов (например, целевого продукта), или если вы использовали Embedded Coder®, чтобы создать и указать заменяющие библиотеки пользовательского кода.

Чтобы сгенерировать список зарезервированных слов для библиотек, в настоящее время указанных в вашей среде, используйте следующую функцию MATLAB®:

lib_ids = RTW.TargetRegistry.getInstance.getTflReservedIdentifiers()

Эта функция возвращает массив ключевых слов библиотеки. Определение входного параметра является дополнительным.

Примечание

Чтобы перечислить библиотеки, в настоящее время указанные в вашей среде, используйте команду MATLAB crviewer.

Чтобы сгенерировать список зарезервированных слов для определенной библиотеки, которой вы пользуетесь, чтобы сгенерировать код, вызовите функцию, передающую имя библиотеки, как отображено в меню Code replacement library на Code Generation> панель Interface диалогового окна Configuration Parameters. Например,

lib_ids = RTW.TargetRegistry.getInstance.getTflReservedIdentifiers('GNU C99 Extensions')

Вот частичный пример функционального вывода:

>> lib_ids = ...
   RTW.TargetRegistry.getInstance.getTflReservedIdentifiers('GNU C99 Extensions')

lib_ids = 

    'exp10'
    'exp10f'
    'acosf'
    'acoshf'
    'asinf'
    'asinhf'
    'atanf'
    'atanhf'
...
    'rt_lu_cplx'
    'rt_lu_cplx_sgl'
    'rt_lu_real'
    'rt_lu_real_sgl'
    'rt_mod_boolean'
    'rt_rem_boolean'
    'strcpy'
    'utAssert'

Примечание

Некоторые возвращенные ключевые слова появляются с суффиксным $N, например, 'rt_atan2$N'. $N расширяется в суффиксный _snf, только если поддерживаются неличные числа. Например, 'rt_atan2$N' представляет 'rt_atan2_snf', если неличные числа поддерживаются и 'rt_atan2', если неличные числа не поддержаны. Предусмотрительно, необходимо обработать обе формы ключевого слова, как зарезервировано.