mxGetPr inside mexFunction returning null

2 次查看(过去 30 天)
i have a mexFunction() which i compile under visual studio.
inside the mexFunction() i have sometthing like
double *a = mxGetPr(nrhs[1]);
the complilation is fine and in the debug mode i am able to enter the mexFunction and stop at the "double *a" line but i get null for "a".
i am unable to figure out what the problem may be. For a different program similar procedures work.

回答(1 个)

Jan
Jan 2013-7-20
编辑:Jan 2013-7-21
"I have something like" is not sufficient for a question. Obviously there is a problem with the specific code, therefore posting something similar cannot help to find the bug.
mxGetPr(prhs[1]) works correctly, whenever the function was called with at least 2 inputs and the 2nd one is a double array. Is this the case?
[EDITED] James saw, that "nrhs" is wrong here and "prhs" must be meant.
  3 个评论
James Tursa
James Tursa 2013-7-21
I am assuming that nrhs[1] is a typo and should be prhs[1] ... true? And as Jan has already said, please post your code instead of making us guess with your code snippets. Also post how you are calling the function from the m-file level.
Jan
Jan 2013-7-21
@James: Oh. I've overseen the obviously confused "nrhs" and "prhs". It was almost midnight and one of the hottest nights we can have in central Europe.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by