我正在将一些文件分配给 MATLAB 中的变量。我有点懒惰,并试图展示一些解决问题的方法,所以我尝试编写一个函数来做到这一点。函数体:
i=0
for i=0:8
eval(sprintf('C%d=wavread([''C'' num2str(i)]);', i));
eval(sprintf('Cs%d=wavread([''Cs'' num2str(i)]);', i));
eval(sprintf('D%d=wavread([''D'' num2str(i)]);', i));
eval(sprintf('Ef%d=wavread([''Ef'' num2str(i)]);', i));
eval(sprintf('E%d=wavread([''E'' num2str(i)]);', i));
eval(sprintf('F%d=wavread([''F'' num2str(i)]);', i));
eval(sprintf('Fs%d=wavread([''Fs'' num2str(i)]);', i));
eval(sprintf('G%d=wavread([''G'' num2str(i)]);', i));
eval(sprintf('Af%d=wavread([''Af'' num2str(i)]);', i));
eval(sprintf('A%d=wavread([''A'' num2str(i)]);', i));
eval(sprintf('Bf%d=wavread([''Bf'' num2str(i)]);', i));
eval(sprintf('B%d=wavread([''B'' num2str(i)]);', i));
i=i+1
end
当我只为 i 赋值并在循环中运行代码时,一切都很糟糕,但是当我实际将它作为循环运行时,它只会运行完成而不返回任何变量。
任何想法为什么?
谢谢大家!还弄清楚了为什么我的函数没有返回任何东西!愚蠢的错误:)