在我的matlab工作空间中,我有结构、单元和变量。需要转换所有";双";将值键入";单个";类型值。
例如
4x33 double
我需要去
4x33 single
我已经使用过这样一段代码:
s = whos;
disp(s)
for i = 1:length(s)
if strcmp(s(i).class,'double')
name = s(i).name;
disp(name);
assignin('base', name, single(evalin('base', name)));
end
end
它对存储在我的工作区中的变量很有效,但问题是它无法达到存储在structs中的工作区的值。
我怎样才能做到这一点?
将双精度转换为单精度的方法是
CCD_ 1。
您可以将single
用作structfun:
a.c=5;
b=structfun(@single,a)