如何从 mex 函数返回浮点值,以及如何从 m 文件检索它?
我知道 mex 函数的所有返回值都存储在 mxArray* 类型的 plhs 数组中。我想返回一个float类型的值。我该怎么做呢?
非常感谢一些有关从 mex 函数返回它并从 m 文件检索它的代码示例。
I understand that all the returned values of a mex function are stored in plhs array of type mxArray*. I want to return a value of type float. How can I do it?
Some code examples on returning it from the mex function and retrieving it from the m-file is much appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
float 类型数据的 MATLAB 类名称是“single”。
在 MEX 文件中,您可以编写:
从 M 文件中检索它与调用任何其他函数非常相似。如果您将 MEX 函数命名为
foo
,则可以这样调用它:现在
x
将包含相当于single([1 2 3; 4 5 6])
存储在plhs[0]
中。The MATLAB class name for float type data is "single".
In the MEX-file you could write:
Retrieving it from the M-file is pretty much like calling any other function. If you named the MEX-function
foo
, you'd call it like this:Now
x
would contain the single-precision value equivalent tosingle([1 2 3; 4 5 6])
that was stored inplhs[0]
.