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

Для просмотра документации необходимо авторизоваться на сайте