# lasterror

получение последнего записанного сообщения об ошибке

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

                str=lasterror( [opt] )
                [str,n]=lasterror([opt])
                [str,n,line,func]=lasterror([opt])

## Аргументы

str

  вектор символьных строк или пустая матрица. Последнее записанное сообщение об ошибке.

n

  целое число, 0 или номер последней записанной ошибки.

line

  целое число, 0 или последний записанный номер строки функции.

func

  строка, имя последней записанной функции.

opt

  логическое значение, если %t, то записанное сообщение очищено. По умолчанию %t.

## Описание

Каждый раз, когда возникает ошибка, регулятор ошибок Scilab записывает её во внутреннюю таблицу (удерживается только последняя). Функция `lasterror` позволяет получить сообщение, номер ошибки, текущую функцию (если есть) и номер текущей строки в текущей функции из этой таблицы.

Указанный номер строки является номером физической строки, в которой произошла последняя ошибка. Заметьте, что версии Scilab до 5.0 использовали для указания логический номер строки последней ошибки. Разница имеется только если функция, в которой произошла ошибка, содержит продолженные строки (смотрите dot) перед местом возникновения ошибки.

Эта функция особенно полезна при использовании errcatch или execstr.

Записанное сообщение об ошибке может удерживаться для дальнейшего вызова `lasterror`, с помощью `lasterror(%f)`.

## Примеры

    ierr=execstr('a=zzzzzzz','errcatch')
    if ierr>0 then
      disp(lasterror())
    end

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

- errcatch
- execstr
- error
- errclear
- edit_error