Undefined Function or variable Error
Mostrar comentarios más antiguos
I tried a code with a filename jesuschrist.m. Always says Undefined function or variable 'jesuschrist'.
Any help is appreciated.
Thanks
Respuestas (2)
Adam
el 15 de Sept. de 2015
0 votos
Is the file on your Matlab path? In order for Matlab to see it and run it it must be on your path.
10 comentarios
Jab
el 15 de Sept. de 2015
Walter Roberson
el 15 de Sept. de 2015
which -all jesuschrist
You may have to use pathtool to add the directory to your MATLAB path.
Jab
el 15 de Sept. de 2015
Editada: Walter Roberson
el 15 de Sept. de 2015
Jab
el 15 de Sept. de 2015
Walter Roberson
el 15 de Sept. de 2015
Is it a script or is it a function? If it is a function then what is the first line of the file?
Jab
el 15 de Sept. de 2015
Editada: Walter Roberson
el 15 de Sept. de 2015
Walter Roberson
el 15 de Sept. de 2015
You need to get rid of the "clear all"
Jab
el 15 de Sept. de 2015
Walter Roberson
el 15 de Sept. de 2015
Experiment with
run('D:\ADNI1 Screening 1.5T(1075)\code\jesuschrist.m')
Jab
el 15 de Sept. de 2015
Image Analyst
el 15 de Sept. de 2015
clear all doesn't matter - getting rid of that won't fix it as you found out.
Also, you did not get the error message "Undefined function or variable 'jesuschrist'."
You got the error message "Undefined function or variable 'fullFileName'." The reason is that once you started running jesuschrist, it hit that line and realized that fullFileName had not yet been defined by the time it needed to use it. Even after you fix that, you'll get the same problem with M because you did not define M either.
To fix, put this code right before your call to load():
% Have user browse for a file, from a specified "starting folder."
% For convenience in browsing, set a starting folder from which to browse.
startingFolder = 'C:\Program Files\MATLAB';
if ~exist(startingFolder, 'dir')
% If that folder doesn't exist, just start in the current folder.
startingFolder = pwd;
end
% Get the name of the file that the user wants to use.
defaultFileName = fullfile(startingFolder, '*.*');
[baseFileName, folder] = uigetfile(defaultFileName, 'Select a file');
if baseFileName == 0
% User clicked the Cancel button.
return;
end
fullFileName = fullfile(folder, baseFileName)
2 comentarios
Walter Roberson
el 15 de Sept. de 2015
No, fullFileName appears as a string in the posted code, not as a variable.
load fullFileName
is
load('fullFileName')
Of course if there is no .mat named literally fullFileName.m then there would be a problem.
Categorías
Más información sobre Startup and Shutdown en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!