Если ваша программа генерирует неправильные ответы, примите во внимание следующее.
Проверьте наличие ошибок в вычислительной логике.
Проверьте, считывается ли программа из неинициализированного раздела памяти. Для примера чтение вектора с 11 элементов массива 10 элементами приводит к непредсказуемым результатам.
Проверьте, перезаписывает ли программа действительные данные из-за сбоев в памяти. Для примера запись в вектор с 15 элементов массива 10 элементами перезаписывает данные смежной переменной в памяти. Этот случай можно рассматривать так же, как нарушения сегментации.
Во всех этих случаях можно использовать mexPrintf
для исследования значений данных на промежуточных стадиях. Также запустите MATLAB® в отладчике.