Aufruf von C aus MATLAB heraus
calllib
Eine freigegebene Bibliothek ist eine Zusammenstellung von Funktionen, die zur Laufzeit dynamisch von einer Anwendung geladen werden. Die MATLAB-Schnittstelle unterstützt Bibliotheken, die in C Header-Dateien definierte Funktionen enthalten. Verwenden Sie zum Aufrufen von Funktionen in C++ Bibliotheken die in C++ Aufruf von MATLAB aus beschriebene Schnittstelle.
Funktionen
loadlibrary | Load C shared library into MATLAB |
unloadlibrary | Unload shared C library from memory |
calllib | Call function in C shared library |
libfunctions | Return information on functions in shared C library |
libfunctionsview | Display shared C library function signatures in window |
libisloaded | Determine if shared C library is loaded |
libpointer | Pointer object for use with shared C library |
libstruct | Convert MATLAB structure to C-style structure for use with shared C library |
Klassen
lib.pointer | Pointer object compatible with C pointer |
Themen
- Call Functions in C Library Loaded with loadlibrary
How to call functions in external, shared C libraries from MATLAB using
calllib
. - Pass Arguments to Shared C Library Functions
How to construct MATLAB arguments compatible with the argument types found in the library functions.
- Represent Pointer Arguments in C Shared Library Functions
How to use
libpointer
to pass arguments by reference. - Represent Structure Arguments in C Shared Library Functions
Requirements for passing a MATLAB structure to an external library function.
- MATLAB Prototype Files
How to modify C header file information.
Fehlersuche
Limitations to Shared Library Support
C language features not supported.
Rules for using C language structures in a shared library.
Errors occur when the shared library is not a valid library.
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.
MATLAB Terminates Unexpectedly When Calling Function in Shared Library
Some shared libraries, compiled as Microsoft® Windows® 32-bit libraries, use a calling convention that is incompatible with the default MATLAB calling convention.