6.4.1从元胞数组生成的逗号分隔列表

如上所述(参见索引元胞数组),可以使用将元胞数组的元素提取到逗号分隔的列表中{}运算符。通过用包围此列表[],它可以连接到一个数组中。例如

a={1,[2,3],4,5,6};b=[a{1:4}]⇒ b=1 2 3 4 5

类似地,可以创建一个新的元胞数组,其中包含用{}。通过用'包围列表{}将创建一个新的元胞数组,如下例所示:

a={1,兰特(2,2),“三”};b={a{[1,3]}}⇒ b={[1,1]=1[1,2]=3}

此外,单元元素(通过访问{})可以直接传递给函数。元胞数组中的元素列表将作为参数列表传递给给定的函数,就好像它是从元素作为单独的参数调用的一样。两个呼叫输出函数在以下示例中是相同的,但后者更简单并且可以处理任意大小的元胞数组:

c={“GNU”,“Octave”,“is”,“Free”,“Software”};printf(“%s”,c{1},c{2},c{3},c{4},c{5});-|GNU Octave是免费软件printf(“%s”,c{:});-|GNU Octave是自从软件

如果在赋值的左侧使用,则使用生成逗号分隔的列表{}可以赋值给。例如

在{1}=[10,20,30]中;in{2}=inf;in{3}=“最后一个”;in{4}=“第一”;out=数组(4,1);[out{1:3}]=in{1:3};[out{4:6}]=in{[1,2,4]})⇒ out={[1,1]=10 20 30[2,1]=Inf[3,1]=最后[4,1]=10 20 30[5,1]=Inf[6,1]=first}

版权所有 © 2024 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号