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
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 个)

类别

Help CenterFile Exchange 中查找有关 Whos 的更多信息

标签

尚未输入任何标签。

产品


版本

R2008b

Community Treasure Hunt

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

Start Hunting!

Translated by