こんにちは、MATLABからmex関数に値を送信したいと思います。値は通常約10桁の長さで、unsignedlonglongデータ型を使用しました。
しかし、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
より多くの情報を探すことができます。