我有一个名为mxsf的S函数。当我运行以下命令时:
mxhandle = get_param(mxsf, 'Handle')
我当然得到了返回的句柄,但它返回[88.0012]而不是88.0012。我有一个用于与matlab / Simulink接口的内部.NET库,我们有一个函数可以在Simulink中得到变量的两倍,但是如果double在括号之间它将无法工作。如何使get_param返回句柄而不将其粘贴在数组中?值得注意的是,这并不总是会发生(有时get_param会在不将其放入数组的情况下获得句柄,但我不知道如何强制执行此操作)。对此的任何帮助将不胜感激。
答案 0 :(得分:1)
我无法使用add_block()将块路径作为字符串返回,它会不断返回一个double(可能是Simulink块句柄?)。你的add_block()调用语法是什么?
我的猜测是add_block()返回一个包含块路径的单元格数组,因此get_param()返回一个数组。试试
mxhandle = get_param(mxsf{1}, 'Handle')