【发布时间】:2013-02-08 00:09:37
【问题描述】:
我想编写一个比较两个字符串元素的 Matlab 函数,以便给定一个字符串的单个单元格数组,它将返回该单个单元格数组,但按字母顺序,例如 function({'car','apple','bus'}) 所以我写了一个子比较两个字符串的元素并分配一个数值的函数:
function [ out ] = comparestrings( a,b )
for k=1:min(length(a),length(b))
if a(1,k)<b(1,k)
out=1;
return
elseif b(1,k)<a(1,k)
out=0;
return
end
end
if length(a)<length(b)
out=1;
else out=0;
end
end
但是当我尝试在 Matlab 中运行我的程序时,它显示行中有错误
if a(1,k) < b(1,k)
我不知道为什么会这样?
【问题讨论】:
-
错误是什么?你的字符串是如何定义的?如果它是 kx1 的向量,则可能存在大小不匹配。
-
这纯粹是一个编程问题。它可能更适合 StackOverflow。如果您愿意,我们可以为您迁移问题。
-
@WillieWong 哦,对,对不起,我没有意识到。那太好了,谢谢。
标签: matlab