主要内容

Calllib.

C共享库中的呼叫函数

描述

例子

[x1,...,xn] = Calllib(libname.funcname.arg1,...,argn的)呼叫功能funcname.在C库中libname.,传递输入参数arg1,...,argn。这Calllib.函数返回从中获得的输出值funcname.x1,...,xn

例子

全部收缩

加载库。

如果〜libisloaded('shllibsample')AddPath(FullFile(Matlabroot,'extern''例子''shrlib'))LoadLibrary('shllibsample'的)结尾

显示功能签名。

libfunctionsview.Shrlibsample.
[Double,C_StructPtr] AddstructByRef(C_StructPtr)

输入参数是指向a的指针c_struct.数据类型。

创建一个matlab.®结构体,塑造

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

调用函数。

[res,st] = calllib('shllibsample''addstructbyref',结构);

显示结果。

res.
Res = -279.

清理。

卸载限制Shrlibsample.

输入参数

全部收缩

共享库的名称,指定为字符向量。不包括路径或文件扩展libname.

如果你打电话LoadLibrary.使用别名选项,然后您必须使用别名名称libname.争论。

数据类型:char

库中的函数名称,指定为字符向量。

数据类型:char

输入参数,1到N,要求funcname.(如果有的话),由任何类型指定。这funcname.参数列表指定参数类型。

输出参数

全部收缩

输出参数,1到n,来自funcname.(如果有的话),返回任何类型。这funcname.参数列表指定参数类型。

限制

  • 与使用加载的库一起使用LoadLibrary.功能。

提示

  • MATLAB在调用之前验证输入参数类型funcname.。如果MATLAB显示有关数据类型的错误消息,请检查MATLAB函数签名。例如,如果funcname.在图书馆里Mylib.类型:

    libfunctions('mylib',' -  full')

    找到funcname.,滚动输出。有关更多信息,请参阅您的库文档。

    你打电话时funcname.,该功能可能会显示错误。有关错误消息的信息,请参阅库文档。

在R2006A之前介绍