w MATLAB-ie wprowadzana jest zmienna typu char będąca tablicą znaków o rozmiarach 1 na 5. Kody tych znaków można otrzymać przy pomocy polecenia:
a = double(s) a =
87 105 116 97 106
Wykorzystując polecenie whos można określić ile pamięci zajmuje łańcuch w przestrzeni roboczej:
Name Size Bytes Class
name 1x5 10 char array
Jeden znak zajmuje dwa bajty pamięci. Funkcje class oraz ischar identyfikują typ zmiennej s jako macierz znaków:
>> class (s) ans =
char
>> ischar(s) ans =
1
Sposób wyświetlania łańcuchów znaków realizowany jest przez funkcje double i char. Funkcja double wyświetla wartości liczbowe kodów ASCII znaków łańcuchów. Funkcja char przywraca odwzorowanie w postaci znaków:
>> s = double(s) ;
>> s = char(s)
s =
Witaj
Rozszerzeniem łańcuchów są macierze znaków i wektory łańcuchów omówione w dalszej części.
W oparciu o powyższe dw'a typy podstawowe wprowadzane są typy złożone, takie jak:
- macierze rzadkie (ang. sparse matrices). które zapamiętują pozycje nie-zerowych wyrazów i wartość tego elementu,
- macierze liczb całkowitych 8-bitowych bez znaku (ang. uint8) - stosowane w celu efektywnego wykorzystania pamięci przy przetwarzaniu obrazów, bez możliwości wykonywania na nich operacji arytmetycznych,
- tablice komórkowe (ang. celi arrays) - typ złożony zawierający bloki różnych typów i ogólnie różnych wymiarów,
- struktury tablicowe (ang. struct) - typ złożony zawierający pola, pojęciowo zbliżony do typu struktura w języku C -h- lub record w języku Pascal.
- klasy (ang. class) - typ złożony zawierające strukturę i metody, czyli funkcje i operatory, obsługujące obiekty danej klasy, pojęciowo zbliżone do typu klasa w języku C ++ lub obiekt w języku Pascal.
29