exponenta event banner

Настройка файловой инфраструктуры и путей

Порядок поиска по пути компиляции

fiaccel разрешает вызовы функций путем поиска сначала по пути генерации кода, а затем по пути MATLAB ®. По умолчанию fiaccel пытается скомпилировать и сгенерировать код для функций, найденных на пути, если функция не объявлена как внешняя. Внешняя функция - это функция на пути MATLAB, которая отправляется программному обеспечению MATLAB для выполнения. fiaccel не компилирует внешние функции, а отправляет их в MATLAB для выполнения.

Соглашения об именовании

MATLAB применяет правила именования для функций и созданных файлов.

Зарезервированные префиксы

MATLAB резервирует префикс eml для глобальных C-функций и переменных в сгенерированном коде. Например, имена функций библиотеки времени выполнения начинаются с префикса emlrt, такие как emlrtCallMATLAB. Во избежание конфликтов имен не называйте функции C или основные функции MATLAB префиксом eml.

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

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

При создании кода C++ с помощью программного обеспечения MATLAB Coder, кроме того, код MATLAB не должен содержать зарезервированные ключевые слова C++.

Зарезервированные ключевые слова C

assertexternsetjmpstring
autofenvshortstruct
breakfloatsignalswitch
caseforsignedtgmath
chargotosizeofthreads
constifstatictime
complexintstdaligntypedef
continueinttypesstdarguchar
ctypeiso646stdatomicunion
defaultlimitsstdboolunsigned
dolocalestddefvoid
doublelongstdintvolatile
elsemathstdiowchar
enumregisterstdlibwctype
errnoreturnstdnoreturnwhile

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

algorithmcstddefiostreamsstream
anycstdintistreamstack
arraycstdioiteratorstatic_cast
atomiccstdliblimitsstdexcept
bitsetcstringliststreambuf
cassertctgmathlocalestring_view
catchctimemapstrstream
ccomplexcucharmemorysystem_error
cctypecwcharmemory_resourcetemplate
cerrnocwctypemutablethis
cfenvdeletemutexthread
cfloatdequenamespacethrow
chronodynamic_castnewtry
cinttypesexceptionnumerictuple
ciso646executionoperatortypeid
classexplicitoptionaltype_traits
climitsexportostreamtypeindex
clocalefilesystemprivatetypeinfo
cmathforeward_listprotectedtypename
codecvtfriendpublicunordered_map
complexfstreamqueueunordered_set
condition_variablefunctionalrandomusing
const_castfutureratioutility
csetjmpinitializer_listregexvalarray
csignalinlinereinterpret_castvector
cstdaligniomanipscoped_allocatorvirtual
cstdargiossetwchar_t
cstdbooliosfwdshared_mutex 

Зарезервированные ключевые слова для создания кода

absfortranlocalZCErtNaN
asmHAVESTDIOlocalZCSVSeedFileBuffer
boolid_tmatrixSeedFileBufferLen
boolean_Tint_TMODELsingle
byte_T int8_TMTTID01EQ
char_Tint16_TNCSTATEStime_T
cint8_Tint32_TNULLtrue
cint16_Tint64_TNUMSTTRUE
cint32_TINTEGER_CODEpointer_Tuint_T
creal_TLINK_DATA_BUFFER_SIZEPROFILING_ENABLED uint8_T
creal32_TLINK_DATA_STREAMPROFILING_NUM_SAMPLESuint16_T
creal64_TlocalBreal_Tuint32_T
cuint8_TlocalCreal32_Tuint64_T
cuint16_TlocalDWorkreal64_TUNUSED_PARAMETER
cuint32_TlocalPRTUSE_RTMODEL
ERTlocalXRT_MALLOC VCAST_FLUSH_DATA
falselocalXdisrtInfvector
FALSElocalXdotrtMinusInf 

Соглашения по именованию созданных файлов

MATLAB предоставляет специфичные для платформы расширения для файлов MEX.

ПлатформаРасширение файла MEX
Linux ® x86-64.mexa64
Windows ® (32-разрядная версия).mexw32
Windows x64.mexw64