Отладка функции MATLAB, вызываемой Engine C

При создании MATLAB® функции для использования в приложениях engine, это обеспечивает запуск функций в MATLAB, прежде чем вызывать их через функции библиотеки engine.

После того, как вы интегрируете функцию MATLAB в приложение engine, можно использовать dbstop и другие команды отладки MATLAB для отладки функции, вызываемой приложением engine. Возможно, потребуется добавить код в приложение, чтобы приостановить обработку, чтобы можно было ввести команду debug, если только вы не присоедините приложение к существующему сеансу работы с MATLAB.

Приложение Debug Engine в Windows

Предположим, что у вас есть приложение engine, которое вызывает функцию MATLAB myfcn в Windows®. Перед вызовом добавьте следующий оператора к коду ядра myfcn. Этот код ожидает ввода данных пользователем.

fgetc(stdin);

Запустите приложение engine. Приложение открывает рабочий стол MATLAB и консольное приложение Windows MATLAB. В командной строке рабочего стола введите следующую команду. Убедитесь, что функция находится в пути MATLAB.

dbstop("myfcn")

В окне консоли нажмите Enter. MATLAB входит в режим отладки; введите команды debug в командном окне рабочего стола.

Приложение Debug Engine, присоединенное к существующему сеансу работы с MATLAB

Дополнительные сведения об использовании существующего Сеанса работы с MATLAB см. в разделе Присоединение к существующим Сеансам работы с MATLAB. Для отладки функций myfcn вызывается приложением engine, сначала запустите MATLAB как сервер автоматизации с помощью одной из следующих команд.

  • Из системного приглашения:

    matlab.exe -automation
  • В командной строке MATLAB:

    state = enableservice('AutomationServer',true);

В командной строке MATLAB введите:

dbstop("myfcn")

Запустите приложение engine. MATLAB входит в режим отладки; введите команды debug в командном окне MATLAB.