matlab中函数的参数

时间:2012-03-25 07:09:27

标签: matlab

我正在编写一个带有两个参数的函数,我希望将第二个参数作为字符串处理。以下代码遇到错误

function Derivative = derive(Matrix9x1,string Variable) 端

如何告诉matlab? 我的意思是即使用户输入1作为第二个参数,它也应该作为字符串处理 并且用户应该能够输入例如 omega

2 个答案:

答案 0 :(得分:3)

如果函数的第二个参数' 是一个字符串',那么它将仅作为字符串'处理',即如果用单引号将其括起来。如果要将数字传递给函数并将其转换为字符串以进行进一步操作,请使用函数num2str。如果你想编写一个函数,根据第二个参数的类型采取不同的操作,你将需要在调用函数时测试该类型;您可能希望查看函数ischarisstrpropisnumeric及其关系。

哦,不要忘记Matlab'字符串'实际上是一个字符数组,只是整数代表字符的便利'类型'。

答案 1 :(得分:-1)

Matlab函数与编程语言函数不同。并不是说这些编程语言中的示例也不起作用。将整数传递给需要字符串的函数会给你编译错误。

我能想到的Matlab中最好的选择是检查或转换函数内的第二个输入变量。也许这可以帮到你:http://www.mathworks.nl/help/techdoc/ref/typecast.html