String 以字符串为定义的Matlab函数定义方法(MFILE)
前几天我使用了这个方法,但我忘记了细节,我们使用了如下语法:String 以字符串为定义的Matlab函数定义方法(MFILE),string,matlab,function,String,Matlab,Function,前几天我使用了这个方法,但我忘记了细节,我们使用了如下语法: f=//command//(x,'sin(x)'); x= 0; y= f(x); 像这样的。 我不确定语法是否完全正确,或者正确的命令是什么。但在此之后,我们可以简单地要求f(x)值如下: f=//command//(x,'sin(x)'); x= 0; y= f(x); 结果是y=0 你的要求通常是不可取的。请检查一个简单的匿名函数是否也符合您的要求: f=@(x)(sin(x)) 如果您确实需要从字符串计算: f=st
f=//command//(x,'sin(x)');
x= 0;
y= f(x);
像这样的。
我不确定语法是否完全正确,或者正确的命令是什么。但在此之后,我们可以简单地要求f(x)值如下:
f=//command//(x,'sin(x)');
x= 0;
y= f(x);
结果是y=0 你的要求通常是不可取的。请检查一个简单的匿名函数是否也符合您的要求:
f=@(x)(sin(x))
如果您确实需要从字符串计算:
f=str2func('@(x)sin(x)')
我建议不要使用第二个选项,除非绝对需要,否则它可能会导致难以调试的错误。您所要求的通常是不推荐的。请检查一个简单的匿名函数是否也符合您的要求:
f=@(x)(sin(x))
如果您确实需要从字符串计算:
f=str2func('@(x)sin(x)')
我建议不要使用第二个选项,除非绝对需要,否则它可能会导致难以调试的错误。我自己找到了答案,它是“inline”命令;:)
您也可以根据需要添加任意多的变量。我自己找到了答案,答案是“inline”命令;:)
您也可以根据需要添加任意多的变量。或只需
f=str2func('sin')
。或只需f=str2func('sin')
。请记住,inline
将在未来的MATLAB版本中删除。请记住,inline
将在未来的MATLAB版本中删除。