TYPECAST和TYPECASTX是mex函数,旨在通过扩展模拟MATLAB固有的TYPECAST函数。这些C-mex版本的typecast在以下重要方面不同于固有的typecast:
内在的定型
------------------
复制类型:深度数据复制
允许复杂:否
允许逻辑:否
允许字符:否
允许非矢量:否
C-mex类型转换
--------------
副本类型:共享数据副本
复杂的:是的
允许逻辑:是(无法从复杂转换)
允许字符:是(无法从复数转换)
允许非向量:是的
由于这些C-mex函数生成原始数据的共享副本,因此它比MATLAB的固有类型转换效率更高,如果您使用的是大变量,那么这种类型转换可能很重要。对于非向量输入,第一个非单例维度必须与转换兼容。
C-mex typecast和typecastx函数在功能上*没有*区别。包含typecastx的目的是让用户可以拥有上面所示的扩展功能,而不必隐藏内在的typecast。e、 例如,没有MATLAB固有类型转换的旧版本MATLAB用户可以同时安装typecast和typecastx,而具有MATLAB*固有类型转换的更高版本MATLAB用户可以选择只安装typecastx函数。
请注意,这些C-mex函数是自构建的。。。你不必知道关于C的任何事情。
引用为
詹姆斯·图尔萨(2021年)。typecast和typecastx C-mex函数(//www.tianjin-qmedu.com/matlabcentral/fileexchange/17476-typecast-and-typecastx-c-mex-functions),MATLAB中央文件交换。恢复.