exponenta event banner

Ошибка сегментации файлов MEX

Если двоичный файл MEX вызывает нарушение сегментации или утверждение, это означает, что файл MEX пытается получить доступ к защищенной, доступной только для чтения или нераспределенной памяти.

Эти типы ошибок программирования трудно отследить. Нарушения сегментации не всегда происходят в одной точке с логическими ошибками, которые их вызывают. Если программа записывает данные в непреднамеренный раздел памяти, ошибка может возникнуть только после того, как программа прочитает и интерпретирует поврежденные данные. Следовательно, нарушение сегментации может произойти после завершения выполнения MEX-файла.

Одной из причин повреждения памяти является передача нулевого указателя функции. Чтобы проверить наличие этого условия, добавьте код в файл MEX для проверки недопустимых аргументов в функции MEX Library и Matrix API.

Для устранения неполадок такого рода запустите MATLAB ® в среде отладки.

Связанные темы