Session 14: Data Structures [June 13, 2011, 12:43 a.m.]
Objectives
In this session you will learn the following:
- User defined data structures in Scilab
- Creating and using struct, cell, list, tlist and mlist
Introduction
User defined data structures offer the programmer the facility to tailor data suited to represent and program solutions to specific problems. Most data structures are an agglomeration of basic data types and previously defined user defined data types.
Scilab Data Types
Data types available in Scilab can be listed through the online help on type() and typeof(). The data types available in Scilab are:
Data Type | Object Type | Description |
1 | constant | real or complex constant matrix |
2 | polynomial | polynomial matrix |
4 | boolean | boolean matrix |
5 | sparse | sparse matrix |
6 | boolean sparse | sparse boolean matrix |
8 | int8, int16 or int32 | matrix of integers stored in 1, 2 or 4 bytes |
9 | handle | matrix of graphic handles |
10 | string | matrix of character strings |
11 | un-compiled function (Scilab code) | |
13 | function | compiled function (Scilab code) |
14 | library | function library |
15 | list | list |
16 | tlist | typed list (tlist) |
17 | st or mlist | structure or matrix oriented typed list (mlist) |
128 | pointer | pointer |
129 | size implicit | size implicit polynomial used for indexing |
130 | fptr | Scilab intrinsic (C or Fortran code) |
The following functions are used to determine data types:
- Function type(x) returns the type of a Scilab variable x.
- Function typeof(x) returns a string indicating the type of Scilab object x.