我知道strjoin
可以用来连接字符串,比如'a'
和'b'
但是如果其中一个字符串是变量,比如
a=strcat('file',string(i),'.mat')
我希望:
strjoin({'rm',a})
当我尝试这个时,MATLAB会抛出一个错误,这让我发疯了!
Error using strjoin (line 53) First input must be a string array or cell array of character vectors
答案 0 :(得分:2)
您使用的是哪个版本的MATLAB?错误是什么? strjoin的第一个输入需要是一个单元格数组。尝试strjoin({' rm'},a)。
此外,在17a之前,请执行:
a = strcat('file', num2str(i),'.mat')
在> = 17a中执行:
a = "file" + i + ".mat";
以下是效果比较:
function profFunc
tic;
for i = 1:1E5
a = strcat('file', num2str(i),'.mat');
end
toc;
tic;
for i = 1:1E5
a = "file" + i + ".mat";
end
toc;
end
>> profFunc
Elapsed time is 6.623145 seconds.
Elapsed time is 0.179527 seconds.