假设我有一个目录
cur = 'C:\Windows\debug';
然后我现在可以运行cd(cur)
。但我不习惯使用函数格式。我希望我可以使用cd cur
直接更改当前文件夹。这在MATLAB中是否可行?
编辑:因为我收到以下错误:
>> cur = 'C:\Windows\debug';
>> cd cur
Error using cd
Cannot CD to cur (Name is nonexistant or not a directory).
答案 0 :(得分:2)
以下是documentation for command syntax,以及包含command vs function syntax更多示例的文档文章。
来自文档,
使用命令语法调用函数时,MATLAB将参数作为字符向量传递。
所以不,你不能传递像cur
这样的变量名,因为cur
将被视为一个字符向量,你将与cd('cur')
一样。
你可以做任何一次
cd(cur)
% or
cd 'C:\Windows\debug'
% or (as long as no whitespace in directory path)
cd C:\Windows\debug
如果您不想学习语法,解决方法是选择另一种语言......使用括号是MATLAB中的标准做法,因为在使用命令语法时也无法从函数中获取输出值。
同样从scripts and functions documentation您可以看到消息
警告:虽然不带引号的命令语法很方便,但在某些情况下可能会错误地使用它而不会导致MATLAB生成错误。
因此在使用MATLAB时不鼓励这种方法。