eval函数 c语言,matlab中eval函数的用法

MATLAB 的 eval_r 函数用于执行字符串形式的命令,常在循环中动态生成代码。例如,它能用于批量定义变量或设置图表标题。在循环体内,eval_r 将字符串与变量结合,形成完整的 MATLAB 命令并执行。通过 eval_r,可以避免手动编写大量重复代码,提高编程效率。示例中展示了如何利用 eval_r 在循环中创建和命名变量,以及在 subplot 中设置不同的图表标题。
摘要由CSDN通过智能技术生成

满意答案

eval_r()函数的功能就是将括号内的字符串视为语句并运行

例如: eval_r('y1=sin(2)')就是相当于在matlab命令窗口输入了y1=sin(2)这条命令。

多在循环中使用,可以对多个名字有规则的变量或文件进行操作,

例一:

for x=1:5

eval_r(['y',num2str(x),'=',num2str(x^2),';'])

end

以上语句等价于执行以下5句:

ynum2str(1)=num2str(1^2);

ynum2str(2)=num2str(2^2);

ynum2str(3)=num2str(3^2);

ynum2str(4)=num2str(4^2);

ynum2str(5)=num2str(5^2);

例二:

subplot(711);plot(t,y);title('原始信号’);

for i=1:6

subplot(7,1,i+1);

plot(t,imf(i,:));

eval_r(['title(''IMF',int2str(i),''');']);

end

-------------------------

以上6行程序实际上是执行以下7条命令

subplot(711);plot(t,y);title('原始信号');

subplot(7,1,2);plot(t,imf(1,:));title('IMF1');

subplot(7,1,3);plot(t,imf(2,:));title('IMF2');

subplot(7,1,4);plot(t,imf(3,:));title('IMF3');

subplot(7,1,5);plot(t,imf(4,:));title('IMF4');

subplot(7,1,6);plot(t,imf(5,:));title('IMF5');

subplot(7,1,7);plot(t,imf(6,:));title('IMF6');

其中最后6条是通过循环里面执行的语句

这里主要是通过e v a l()函数实现了输出title('IMFi');这个语句

1.把 title('IMF 看做一个字符串

2.把i (i=1,2,3,4,5,6)这个浮点型变量以字符的形式输出

3.把 '); 看做一个字符串

以上三部分整合起来就是 输出命令 title('IMFi');

其中值得注意的是想要输出单撇号,用''代替'即可,就好像C语言用\\代替\是一个道理,都属于特殊符号。

这样可以么?追问: 不要复制粘贴好么?!!!!!!

00分享举报

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>