Эта ошибка возникает при вызове функции без правильных входных или выходных аргументов или при наличии ошибки в сигнатуре функции в файле заголовка.
Например, подпись функции для addStructByRef функция в shrlibsample является:
[double, c_structPtr] addStructByRef(c_structPtr)
Загрузите библиотеку.
addpath(fullfile(matlabroot,'extern','examples','shrlib')) loadlibrary('shrlibsample')
Создание структуры и вызов addStructByRef.
struct.p1 = 4; struct.p2 = 7.3; struct.p3 = -290;
При вызове функции без входного аргумента MATLAB ® выводит сообщение об ошибке.
[res,st] = calllib('shrlibsample','addStructByRef')
Error using calllib No method with matching signature.
Правильный вызов:
[res,st] = calllib('shrlibsample','addStructByRef',struct)