Why do I get an "undeclared identifier" error when using MEX with the option -D in MATLAB 7.7(R2008b)?
1 次查看(过去 30 天)
显示 更早的评论
While using the following code :
var1 = var1_GUI; % value set from the GUI script
outputName = sprintf('file%d', var1);
mex -DVAR1=var1 -output outputName file.c
I get the following error messages:
Error ...file.c: <lineNumber> undeclared identifier `var1'
采纳的回答
MathWorks Support Team
2009-6-27
The MEX function does not evaluate MATLAB variables from the workspace. In order to evaluate workspace variables, replace the following code:
mex -DVAR1=var1 file.c
with:
eval(['mex -DVAR1=' var1 ' file.c])'
This will make sure that the value of var1 is printed into a string and therefore evaluated.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Whos 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!