Действительный компонент элемента First Data в массиве
#include "matrix.h" double mxGetScalar(const mxArray *pm);
#include "fintrf.h" real*8 mxGetScalar(pm) mwPointer pm
pm
Указатель на mxArray
; не может быть ячейка mxArray
, структура mxArray
, или пустой mxArray
.
Значение первого действительного (немнимого) элемента mxArray
.
В C, mxGetScalar
возвращает double
. Если действительные элементы в mxArray
имеют тип кроме double
, затем mxGetScalar
автоматически преобразует скалярное значение в double
. Чтобы сохранить исходное представление данных скаляра, бросьте возвращаемое значение к желаемому типу данных.
Если pm
точки к разреженному mxArray
, затем mxGetScalar
возвращает значение первого ненулевого действительного элемента в mxArray
. Если нет никаких ненулевых элементов, то функция возвращает 0
.
Вызовите mxGetScalar
получить значение первого действительного (немнимого) элемента mxArray
.
Обычно вы вызываете mxGetScalar
когда pm
точки к mxArray
содержа только один элемент (скаляр). Однако pm
может указать на mxArray
содержа много элементов. Если pm
точки к mxArray
содержа несколько элементов, затем функция возвращает значение первого действительного элемента. Например, если pm
точки к двумерному mxArray
, затем mxGetScalar
возвращает значение (1,1)
элемент. Если pm
точки к 3D mxArray
, затем функция возвращает значение (1,1,1)
элемент; и так далее.
Используйте mxGetScalar
на непустом mxArray
из типа, числового, логического, или char только. Чтобы протестировать на эти условия, используйте Матричные Библиотечные функции, такие как mxIsEmpty
, mxIsLogical
, mxIsNumeric
, или mxIsChar
.
Если входное значение к mxGetScalar
тип int64
или uint64
, затем значение может потерять точность, если это больше flintmax
.
Смотрите эти примеры в
:matlabroot
/extern/examples/refbook
Смотрите эти примеры в
:matlabroot
/extern/examples/mex
Смотрите эти примеры в
:matlabroot
/extern/examples/mx