Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2024.0.0 - English


length

Number of characters of a string. Number of elements of an array or list.

Syntax

n = length(M)

Arguments

M

a matrix (usual or polynomial or character string) or a list.

n

an integer or a matrix of integers.

Description

For usual or polynomial matrix n is the integer equal to number of rows times number of columns of M. (Also valid for M a boolean matrix).

For matrices made of character strings (and in particular for a character string) length returns in n the length of entries of the matrix of character strings M.

The length of a list is the number of elements in the list (also given by size).

The length of an array M of cells or of structures is the number of elements of the array. It is equivalent to size(M, "*").

The length of a mlist is by default the number of elements in the mlist, but you can overload it (see example). Note that for a non-string hypermatrix, there is no need to overload the function. Indeed, length returns the product of the dimensions of the hypermatrix.

length('123') is 3. length([1,2;3,4]) is 4.

WARNING : length of a sparse matrix returns the max of dimensions and not the product of the dimensions. (For example: length(sparse(eye(12,2))) returns max(12,2) and not 24). Please use size(...,'*') with sparse matrix.

Examples

length([123 ; 456 ])
length(['hello world',SCI])
length(rand(2,2,2))
a = mlist(["myMlistT" "field1" "field2"],"aexample","bexampleb");
length(a)
// returns 3 default behaviour if length not overloaded for mlist

// we create an overload function for mlist of type myMlistT
function r=%myMlistT_length(M)
    r = length(M.field1)
endfunction

length(a)
// returns 8 result of length(a.field1)

See also

  • size — size of objects

History

VersionDescription
5.4.0 This function allows overloading for mlist type.
6.0.0
  • The length() of any array C of cells was formerly always 3, whatever are the number of dimensions and the sizes of the array. It is now the number of elements of the array at null depth (without recursive counting), equal to size(C, "*").
  • The length() of any array S of structures was formerly equal to its number of fields +2, whatever are the number of dimensions and the sizes of the array. It is now the number of elements of the array at null depth, equal to size(S, "*").
Report an issue
<< justify Strings part >>

Copyright (c) 2022-2023 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Oct 24 14:30:04 CEST 2023