How to create a pointer on a struct?

9 views (last 30 days)
Andreas Schwager
Andreas Schwager on 21 Feb 2017
Answered: Philip Borghesani on 21 Feb 2017
Hi,
reading the Documentation from libstruct, there is following example:
double addStructFields(c_struct) sm.p1 = 476; sm.p2 = -299; sm.p3 = 1000; sc = libstruct('c_struct',sm)
Executing these lines on my Matlab there is following error Message:
Error using feval Undefined function 'lib.c_struct' for input arguments of type 'struct'.
Error in libstruct (line 16) ptr=feval(['lib.' structtype],initialvalue);
Why ? How to fix?
Thanks

Answers (1)

Philip Borghesani
Philip Borghesani on 21 Feb 2017
MATLAB does not know what a c_struct is without loading the library. Load the library first using the code from the example:
if not(libisloaded('shrlibsample'))
addpath(fullfile(matlabroot,'extern','examples','shrlib'))
loadlibrary('shrlibsample')
end

Categories

Find more on Structures in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!