matlab eval函数有关string的使用

本文地址:http://blog.csdn.net/greenchina1992/article/details/39032775 转载请注明出处


   eval函数是一个比较神奇的函数,也较为好用,主要可以将字符串变换成命令执行,在需要动态生成或使用变量名时,非常好用,具体用法可help eval或者谷歌之。

   简单用法如下:

   

for i = 1:10
    eval(['a = ', num2str(i), ';']);        %中括号将中间的句子组成一个字符串
end

  这个语句等同于:

for i = 1:10
    a = i;
end

  如果需要动态生成变量名的话,eval函数是非常好用的:

for i = 1:10
  eval(['node', num2str(i), '=', num2str(2*i), ';']);
end

以上代码等同于:

node1 = 2*1;
node2 = 2*2;
.
.
.
node10 = 2*10;


eval函数有关string的使用:

node1 = '123123';
a = 'node1';

如果遇到以上语句,我想执行第二条,如果直接使用:

eval('a = node1')

则a的值将变为'123123';而并不是我们想要的'node1',如果需要a是字符串的话,则可以如下执行:

str = 'node1';
eval('a = str');

先将字符串赋值给一个变量即可,虽然并不难,但目前没看到网上有提到该方法,希望能帮到有需要的朋友。






  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值