将结果作为向量返回

时间:2013-02-08 10:02:43

标签: matlab vector

如果我创建一个for循环并返回matlab中某个向量中的所有值,如下所示:

function elements(v)
for i=1:length(v)
    c(i) = v(i)
end

当我运行以下内容时,我得到的结果如下所示:

>> A = [1 2 3 4]

A =

     1     2     3     4

>> elements(A)

c =

     1


c =

     1     2


c =

     1     2     3


c =

     1     2     3     4

如何将结果返回为:c = [1 2 3 4]

感谢。

3 个答案:

答案 0 :(得分:1)

function elements(v)
for i=1:length(v)
    c(i) = v(i);
end

disp(c)

答案 1 :(得分:0)

我不知道这是不是你的意思,但我会这样:

function c = so_test(v)
 c = v(:)';
end

答案 2 :(得分:0)

更紧凑的解决方案

function c = elements(v)
for i=1:length(v)
    c(i) = v(i);
end

请注意,它与其他解决方案没有太大区别, 但我认为这就是你想要做的事情,假设你想做一些复杂的事情/依赖于c。

如果您只想要所有元素,只需使用v(:)'vv'代替@fpe提及。