Main Content

No Matching Signature Error

This error occurs when you call a function without the correct input or output arguments, or if there is an error in the function signature in the header file.

For example, the function signature for the addStructByRef function in shrlibsample is:

[double, c_structPtr] addStructByRef(c_structPtr)

Load the library.

addpath(fullfile(matlabroot,'extern','examples','shrlib'))
loadlibrary('shrlibsample')

Create a structure, and call addStructByRef.

struct.p1 = 4;
struct.p2 = 7.3;
struct.p3 = -290; 

If you call the function without the input argument, MATLAB® displays the error message.

[res,st] = calllib('shrlibsample','addStructByRef')
Error using calllib
No method with matching signature.

The correct call is:

[res,st] = calllib('shrlibsample','addStructByRef',struct)

See Also

|