eval(String):将字符串转换为matlab可执行语句并执行。
如果说for语句可以将数字进行循环,那么eval结合for语句后,则大大提高其循环范围。
比如载入一些数据,m1.mat,m2.mat等等一直到m100.mat
普通写程序
load m1.mat
load m2.mat
然后一直写100行,这显然太笨了!但普通的for语句又无法完成
于是eval函数结合for语句就体现出其价值了
for i=1:100
eval([‘load ’ num2str(i) ‘.mat’])
end
只需要三行!
除此之外,eval还广泛用于人机交互,因为matlab的gui中,get命令得到的str格式的字符 串,通常,会通过str2num将字符串转换为数字,供后续处理。而如果读入的str字符串是 cos,sin之类的指令呢?那么就需要结合eval函数,将字符串转换为指令
如果说for语句可以将数字进行循环,那么eval结合for语句后,则大大提高其循环范围。
比如载入一些数据,m1.mat,m2.mat等等一直到m100.mat
普通写程序
load m1.mat
load m2.mat
然后一直写100行,这显然太笨了!但普通的for语句又无法完成
于是eval函数结合for语句就体现出其价值了
for i=1:100
eval([‘load ’ num2str(i) ‘.mat’])
end
只需要三行!
除此之外,eval还广泛用于人机交互,因为matlab的gui中,get命令得到的str格式的字符 串,通常,会通过str2num将字符串转换为数字,供后续处理。而如果读入的str字符串是 cos,sin之类的指令呢?那么就需要结合eval函数,将字符串转换为指令