1
嗨我想从我的matlab发送一个值到我的mex函数。该值通常约为10位数字,我使用了无符号长整型数据类型。如何将值传递给mex文件
但我有困难从mexfile访问它。 mxGetPr返回double类型,那么是否需要进行一些类型转换?
嗨我想从我的matlab发送一个值到我的mex函数。该值通常约为10位数字,我使用了无符号长整型数据类型。如何将值传递给mex文件
但我有困难从mexfile访问它。 mxGetPr返回double类型,那么是否需要进行一些类型转换?
是的,我刚刚遇到了这个。一般来说,你不应该再使用mxGetPr
。更好的方式来做到这一点是首先检查这样的类型:
if(!mxIsClass(prhs[0],"double"))
{
mexErrMsgTxt("Data must be of type double!!!\n");
}
然后通过(double *)mxGetData(prhs[0])
或在您的情况(unsigned long long int*)mxGetData(prhs[0])
访问这些数据你可以看一下mxIsClass
和mxGetData
获取更多信息。
这是一个浮点值,它存储为这样的 –