Undefined Variable error for a variable that is already defined?
1 次查看(过去 30 天)
显示 更早的评论
Hello all,
I have this code that I have been running to process DICOM images. I previously used it to process two folders (with the same folder structure, just diff name) successfully. Now all of a sudden I get this error "Unrecognized function or variable 'a'. Error in PrintProtocol (line 82) for i=1:size(a,1)". PrintProtocol is a function written by a mentor and I am not the author.
Going to line 82 of PrintProtocol I see this: "for i=1:size(a,1)
cd([foldersin{1} imgfolder slash a(i).name]);"
'a' is defined above in line 60 as "for i=1:size(d,1)
if (d(i).isdir == 1 && length(d(i).name) > 2)
a(l,1) = d(i,1);".
I am confused why it would work previously and then stop working now. To me a is defined in line 60, but am I missing something? I am happy to provide additional details. Thank you for your help.
3 个评论
Fangjun Jiang
2020-7-24
It is inside an "if" statement. It may not be assigned if condition is not met. Put a break point on line 82 and run it again to check the value of a.
采纳的回答
Arthur Roué
2020-7-24
a is defined in a if statement.
if (d(i).isdir == 1 && length(d(i).name) > 2)
If it's false, either d is not a dir or is name is juste 1 charater, a won't be define. Are you sure your folders path are correct ?
14 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 File Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!