永发信息网

matlab 如何以动态的变量名保存变量

答案:2  悬赏:70  手机版
解决时间 2021-11-29 11:45
matlab 如何以动态的变量名保存变量
最佳答案
%%% =============== hujia1.m ========================
%%%
%%% 方法一 用sprintf与eval组合
%%% 可以边生成代码边执行,及其灵活
%%% 但在次数很多的循环体内部尽量不要使用
%%% 因为eval需运行时编译,速度不快

for i=3:5
s=sprintf('m%d=magic(%d);save hujia.mat m%d;',i,i,i); % 对i的每个取值生成一行不同的代码
eval(s); % 执行生成的代码
end

%%% =============== hujia2.m ========================
%%% 方法二 用函数的方式使用save就行了
%%% 在matlab里,像save,print等都有两种使用方式:
%%% 函数形式: save(filename,varname)
%%% 例:x1=rand(3,3);save('hujia.mat','x1');
%%%
%%% 命令形式: save filenam varname
%%% 例:x1=rand(3,3);save 'hujia.mat' x1

m=[];
for i=3:5
m(i)=magic(i);
s=sprintf('m(%d)',i);%生成变量名
save('hujia.mat',s);
end

%%% ================================================
全部回答
for i=1:3
x=i;
save vars.mat x;
end

我试了下,vars.mat中保存的x就是3,其实是经过了三个循环,第一次x保存的是1,第二次是2,循环结束,保存最后一个值3,这样保存的值就随着i的动态变化而变化了.

不知你要的是不是这结果.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
312路营运到晚上什么几点?
单选题下面诗句朗读时节拍正确的一项是A.重帘
从上海站怎么去上海长宁区东诸安浜路103号
箍牙要打钢钉痛不痛
寻找做电器生意的朋友帮忙
4400÷700=44÷7=6…2______.(判断对错
海边房子地下室的作用
天津哪有烤乳猪的地方啊(最好是烤全猪)
揭阳有玩拳皇97的高手吗
let it all hang out是什么意思
陕汽德龙x3ooo维柴43o发动机标配价格
谁说上班就不能穿短裤了,老板第一个不同意
我们今天走一起是什么歌
惠普暗影4和光影4比较
我想找一个人,叫许德运,很多年没见他了,现
推荐资讯
求教HG8245 EPON改GPON,光模块已换,要刷那
东莞强迫症去哪里好
小新在做一道乘法计算题时,把乘数56看成了58
适合3-6岁小朋友玩的多人游戏
市肉二斤的肉什么意思
—Tony, you must have noticed the student
吴字有几个字辈,也就是说一代是一个字辈,像
永安镇的人口面积
南京公交d、y什么意思
莫召奴的人物配乐
车乐缘汽车维修中心地址有知道的么?有点事想
如何修改 IrfanView 显示界面为汉语
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?