Массив к MAT-файлу как происходящий из глобальной рабочей области
#include "mat.h" int matPutVariableAsGlobal(MATFile *mfp, const char *name, const mxArray *pm);
#include "mat.h" integer*4 matPutVariableAsGlobal(mfp, name, pm) mwPointer mfp, pm character*(*) name
mfp
Указатель на информацию о MAT-файле
name
Имя mxArray
, чтобы поместить в MAT-файл
pm
Указатель mxArray
0
, если успешный и ненулевой, если ошибка происходит. В C используйте feof
и ferror
от Стандартной библиотеки для C с matGetFp
, чтобы определить состояние.
Эта стандартная программа помещает mxArray
в MAT-файл. matPutVariableAsGlobal
похож на matPutVariable
, за исключением того, что MATLAB загружает массив в глобальную рабочую область и устанавливает ссылку на него в локальной рабочей области. Если вы пишете в файл формата MATLAB 4, matPutVariableAsGlobal
не загружает его как глобальную переменную и имеет тот же эффект как matPutVariable
.
matPutVariableAsGlobal
пишет mxArray pm
в MAT-файл mfp
. Если mxArray
не существует в MAT-файле, функция добавляет его в конец. Если mxArray
с тем же именем существует в файле, функция заменяет существующий mxArray
на новый mxArray
путем перезаписи файла.
Не используйте имена функции MATLAB для имен переменных. Общие имена переменных, которые конфликтуют с именами функций, включают i
, j
, mode
, char
, size
или path
. Чтобы определить, сопоставлено ли конкретное имя с функцией MATLAB, используйте функцию which
.
Размер нового mxArray
может отличаться от существующего mxArray
.