Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
6.0.0 - Português

Change language to:
English - Français - 日本語 - Русский

Please note that the recommended version of Scilab is 2024.0.0. This page might be outdated.
See the recommended documentation of this function

Ajuda do Scilab >> Estruturas de Dados > typeof

typeof

tipo do objeto

Seqüência de Chamamento

t = typeof(object)
oc = typeof(object, "overload")

Parâmetros

object

objeto Scilab

t

a string (may have spaces): the name of the type of object

oc

a string (without spaces): the name of the overloading code for the object.

Descrição

t = typeof(object) retorna um dos seguintes strings:

string object é uma matriz ou hipermatriz de caracteres e/o textos.
boolean object é uma matriz ou hipermatriz de valores booleanos.
int8 ou int16 ou int32 ou int64 ou uint8 ou uint16 ou uint32 ou uint64
object is a matrix or hypermatrix of [unsigned] integers stored on 8, 16, 32 or 64 bits. (see inttype)
constant object é uma matriz ou hipermatriz de números reais ou complexos
polynomial object é uma matriz ou hipermatriz de polinômios com coeficientes reais ou complexos.
rational object é uma matriz ou hipermatriz de razões de polinômios (matriz de transferência), com coeficientes reais ou complexos.
handle object is a graphics handle. The subtype of graphics handles (Figure, Axes, Polyline, Compound, etc) is available in their .type property. See examples below.
list object é uma lista.
st object é uma estrutura ou um nD-array de estruturas.
ce object é uma célula ou um nD-array de células.
boolean sparse object é uma matriz de valores booleanos esparsa.
Sparse boolean hypermatrices are not supported.
sparse object é uma matriz esparsa de números reais ou complexos.
Sparse numerical hypermatrices are not supported.
"Matlab sparse" object is a Matlab-like-encoded sparse matrix (see mtlb_sparse()).
fptr object is a built-in Scilab function, called also gateway (C, C++ or Fortran code), a.k.a. a primitive.
function object is a function (Scilab code). See also deff.
library object is a library of functions in Scilab language.
pointer object é um ponteiro (ver lufact).
implicitlist object é um polinômio de tamanho implícito para indexação. Ver n:$ e : (colon)
listdelete is returned by typeof(null()) . See null().
void is the typeof undefined elements in lists.
Typed T-Lists or M-Lists:
Note that if the object is a tlist or a mlist, typeof will return the corresponding customized type stored in as a string in the first list entry.
Reserved T-List or M-List types predefined in Scilab:
dir object is the result of a dir() instruction, with fields name, date, bytes, and isdir.
state-space object is a state-space model (see syslin).
program object is a list describing the internal code of a function (see macr2tree).
cblock object is a block of columns of same heights but of different data types, as returned by mfscanf.
XMLDoc object is an XML Document created with xmlRead, xmlReadStr, htmlRead, or htmlReadStr. Additional XML typeof are defined.
H5Object object is the id of an HDF5 file opened with h5open. Additional HDF5 typeof are defined: See HDF5 Objects.
uitree object is a tree, a branch or a leaf as created with a uitree feature. See for instance uiCreateNode.

Exemplos

// Characters and texts
t = ["a" "Hello"   "à é è ï ô û ñ"
     "1" "Bonjour" "указывает тип объекта"
     ";" "Chao"    "オブジェクトの型"
    ]
typeof(t)

// Booleans
typeof(%t)
typeof("abc"=="def")
hm = grand(2,2,2,"uin",0,9)<5
typeof(hm)

// Encoded integers
[ typeof(uint8(%pi))  typeof(int8(-%pi))
  typeof(uint16(%pi)) typeof(int16(-%pi))
  typeof(uint32(%pi)) typeof(int32(-%pi))
  typeof(uint64(%pi)) typeof(int64(-%pi))
]

// Decimal numbers
n = 1:0.3:2
typeof(n)
hm = grand(2,2,2,"uin",0,9)
typeof(hm)

// Decimal integers
n = 1:7
typeof(n)

// Complex numbers
n = [%i 1-%i %pi - 3*%i]
typeof(n)

// Special "constant"
typeof([])   // empty matrix

// Polynomials
n = [ %z (1-%z)^2]
typeof(n)
n = [ 3*%i + %z (1-%i*%z)^2]
typeof(n)

// Rational fractions
r = [%s/(1-%s) (1+%s)^2/(1-%s)]   // with real coefficients
typeof(r)
r = [%s/(%i-%s) (%i+%s)^2/(1-%s)] // with complex coefficients
typeof(r)

// Sparse matrices
// ---------------
w = sprand(100,100,0.001)
typeof(w)     // sparse
typeof(w==w)  // boolean sparse
//x = mtlb_sparse(sprand(10,10,0.1));
//typeof(x)

// Functions and libraries
// -----------------------
deff('y=f(x)','y=2*x');  // Function in Scilab language
f(%pi)
typeof(f)
typeof(cosd)  // written in Scilab

typeof(corelib) // Library of functions in Scilab language

typeof(sin)     // Built-in function (non-editable)
mysin = sin;
mysin(%pi/2)

// Graphical handles
// -----------------
clf
plot2d()
typeof(gcf())
// The subtype of the handle is in the "type" property:
gcf().type
gca().type
gce().type

close(gcf())

// Containers
// ----------
// Simple list
L = list(%pi, %t, %z, %s/(1-%s), "Bonjour", sin, cosd, list("list_in_list", 432));
typeof(L)

// Cells array
C = {%pi, %t, %z ; %s/(1-%s), "Bonjour", list("list_in_list", 432) }
typeof(C)

// (Array of) Structure
S.num = %pi;
S.b = %t;
S(2).t = "Bonjour"
typeof(S)

// Special generic indexing expressions
// ------------------------------------
typeof($)
typeof(:)    // "eye()" equivalent (all elements)
typeof(3:$)

// Typeof for deletion or undefined elements:
// -----------------------------------------
typeof([])      // empty matrix
typeof(null())
L = list(%pi, ,"hey!")
typeof(L(2))   // undefined element

// Customized typeof of T-Lists:
// ----------------------------
L = tlist(['myLongTypeOf','a','b'], 18, 'Scilab');
typeof(L)

// Reserved T-List typeof
// ----------------------
typeof(dir())        // Files directory
//
c = macr2tree(sind); // Internal code of a Scilab macro
typeof(c)
fieldnames(c)'
c.name
//
doc = xmlReadStr("<root><a att=""foo"">Hello</a></root>");
typeof(doc)
xmlDelete(doc)
//
x = 1;
save(TMPDIR + "/x.sod", "x"); // SOD files are HDF5 ones
a = h5open(TMPDIR + "/x.sod");
typeof(a)
h5close(a)

Ver Também

  • type — tipo de variável
  • inttype — tipos de dados inteiros
  • overloading — capacidades de overloading ("sobrecarga") de exibições, funções e operadores
  • isreal — verifica se uma variável é armazenada como real ou complexa.
  • strings — objeto Scilab, strings (cadeias de caracteres)
  • poly — definição de polinômios
  • rlist — definição de função racional do Scilab
  • null — deleta um elemento em uma lista
  • sparse — definição de matriz esparsa
  • issparse — determine whether input is sparse
  • mtlb_sparse — converte matriz esparsa
  • syslin — definição de sistemas lineares
  • dir — gets file list
  • XML Objects — Describe the properties of the different XML objects
  • HDF5 Objects — Describe the properties of the different H5 objects

Histórico

VersãoDescrição
6.0
  • "overload" keyword added.
  • typeof "uint64" and "int64" added.
  • typeof "hypermat" removed. Hypermatrices of any homogeneous type are now natively supported.
  • typeof "listdelete" and "void" added.
  • typeof(:) was "constant" and becomes "implicitlist". typeof(1:$) was "size implicit" and become "implicitlist".
  • The typeof of T-lists and M-lists were limited to 8 characters. They may be longer now.
  • typeof "size implicit" renamed "implicitlist" (1:$)
  • Help page reviewed.
Report an issue
<< typename Estruturas de Dados Parâmetros >>

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 Feb 14 15:09:46 CET 2017