# evstr

вычисление выражений

## Последовательность вызова

                H = evstr(Z)
                [H, ierr] = evstr(Z)

## Аргументы

Z

  матрица символьных строк `M` или `list(M,Subexp)`

  M

    матрица символьных строк.

  Subexp

    вектор символьных строк.

H

  матрица.

ierr

  целое число, указатель ошибки.

## Описание

Возвращает результат вычисления матрицы символьных строк `M`. Каждый элемент матрицы должен определять корректное Scilab-выражение.

Если вычисление выражения `M` ведёт к ошибке, то в случае с одним возвращаемым значением, `H = evstr(M)`, возникает ошибка как обычно. В случае с двумя возвращаемыми значениями, `[H,ierr] = evstr(M)`, ошибки не возникает, но возвращается номер ошибки в `ierr`.

Если `Z` - список, то `Subexp` - вектор символьных строк, который определяет подвыражения, которые вычисляются до вычисления `M`. К этим подвыражениям следует обращаться как `%(k)` в `M`, где `k` - это индекс подвыражения в `Subexp`.

`evstr('a = 1')` не корректно (вместо этого используйте функцию `execstr`).

`Nan`, `NaN` будут интерпретироваться как `%nan`.

`Inf` будет интерпретироваться как `%inf`.

## Примеры

                a = 1; b = 2;
                Z = ['a', 'b'] ;
                evstr(Z)
                Z = list(['%(1)','%(1)-%(2)'],['a+1','b+1']);
                evstr(Z)

                evstr('NaN'), evstr('Inf')
                //Вариант с двумя возвращаемыми значениями
                [H, ierr] = evstr(Z) // ошибки нет
                Z = ['a', 'b', 'c'] ;// переменная c не определена
                [H, ierr] = evstr(Z) // error 4: Неизвестная переменная: c

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

- execstr