mxGetScalar (C and Fortran)

Действительный компонент элемента First Data в массиве

Синтаксис C

#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:

Смотрите также

mxGetM, mxGetN, mxIsScalar