mxGetPr inside mexFunction returning null
1 view (last 30 days)
Show older comments
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.
0 Comments
Answers (1)
Jan
on 20 Jul 2013
Edited: Jan
on 21 Jul 2013
"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 Comments
James Tursa
on 21 Jul 2013
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
on 21 Jul 2013
@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.
See Also
Categories
Find more on C Shared Library Integration in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!