English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tipos de Dados do MATLAB

O MATLAB não precisa de declaração de tipo ou declaração de dimensão. Sempre que o MATLAB encontrar um novo nome de variável, ele criará a variável e atribuirá o espaço de memória apropriado.

Se a variável já existir, o MATLAB substituirá o conteúdo original pelo novo conteúdo e, se necessário, alocará novo espaço de armazenamento.

Por exemplo,

Total = 42

A seguinte declaração cria um nome de variável chamado "Total"1em1matriz, e atribui valores42armazenados neles.

Os tipos de dados disponíveis no MATLAB

O MATLAB oferece15tipos de dados básicos. Cada tipo de dados armazena dados em forma de matriz ou array. O tamanho mínimo dessa matriz ou array é 0x0, e pode crescer até qualquer tamanho de matriz ou array.

A tabela a seguir mostra os tipos de dados mais usados no MATLAB-

Número de sérieTipo de dados e descrição
1

int8

8inteiro com sinal de bit

2

uint8

8inteiro sem sinal de bit

3

int16

16inteiro com sinal de bit

4

uint16

16inteiro sem sinal de bit

5

int32

32inteiro com sinal de bit

6

uint32

32inteiro sem sinal de bit

7

int64

64inteiro com sinal de bit

8

uint64

64inteiro sem sinal de bit

9

single

Dado numérico de precisão simples

10

double

Dado numérico de precisão dupla

11

logical

Valor lógico1ou 0, respectivamente, representando true e false

12

char

Dado de caractere (strings armazenadas como vetores de caracteres)

13

array de células

Índice do array de células, cada célula pode armazenar arrays de diferentes dimensões e tipos de dados

14

estrutura

Semelhante à estrutura do C, cada estrutura tem campos nomeados que podem armazenar arrays de diferentes dimensões e tipos de dados

15

manipulador de função

Ponteiro para função

16

classes de usuário

Objeto construído a partir da classe definida pelo usuário

17

classes java

Objeto construído a partir da classe Java

Exemplo

Crie um arquivo de script usando o seguinte código-

str = 'Hello World!'
n = 2345
d = double(n)
un = uint32(789.50)
rn = 5678.92347
c = int32(rn)

Compilar e executar o código acima, resultará no seguinte-

str = Hello World!
n =  2345
d =  2345
un = 790
rn = 5678.9
c =  5679

Conversão de tipo de dados

MATLAB oferece várias funções para converter valores de um tipo de dados para outro. A tabela a seguir mostra as funções de conversão de tipo de dados-

Função
Ação
char

Converter para um array de caracteres (string)

int2strConverter os dados inteiros para uma string
mat2str

Converter a matriz para uma string

num2strConverter o número para uma string
str2double

Converter a string para um valor de precisão dupla

str2numConverter a string para um número
native2unicode

Converter os bytes de número para um caractere Unicode

unicode2nativeConverter o caractere Unicode para bytes de número
base2dec

Converter a string de número N para um número decimal

bin2decConverter a string de número binário para um número decimal
dec2base

Converter o número decimal para um número N na string

dec2binConverter o decimal para um número binário na string
dec2hex

Converter o número decimal na string para um número hexadecimal

hex2decConverter uma string hexadecimal de número para um número decimal
hex2numConverter uma string hexadecimal de número para um número de precisão dupla
num2hex

Converter o número de precisão simples e dupla para uma string hexadecimal IEEE

cell2matConverter o array de células para um array de números
cell2struct

Converter o array de células para um array de estruturas

cellstrCriar um array de células de strings a partir de um array de caracteres
mat2cellConverter o array para um array de células com tamanhos diferentes
num2cell

Converter o array para um array de células de tamanho uniforme

struct2cellConverter a estrutura para um array de células

Determinação do tipo de dados

MATLAB oferece várias funções para identificar o tipo de dados das variáveis.

A tabela a seguir fornece a função de determinar o tipo de dados da variável-

Função
Ação
isDetectar o estado
isaConfirmar se a entrada é um objeto da classe especificada
iscellConfirmar se a entrada é um array de células
iscellstrDeterminar se a entrada é um array de células de strings
ischarDeterminar se o item é um array de caracteres
isfieldDeterminar se a entrada é um campo de array de estruturas
isfloatDeterminar se a entrada é um array de ponto flutuante
ishghandle

Apto para manipulação de handles de objetos gráficos

isintegerDeterminar se a entrada é um array inteiro
isjavaDeterminar se a entrada é um objeto Java
islogicalDeterminar se a entrada é um array lógico
isnumericDeterminar se a entrada é um array numérico
isobjectDeterminar se a entrada é um objeto do MATLAB
isrealVerificar se a entrada é um array de números reais
isscalarDeterminar se a entrada é um escalar
isstrDeterminar se a entrada é um array de caracteres
isstructDeterminar se a entrada é um array de estruturas
isvectorDeterminar se a entrada é um vetor
classDeterminar a categoria do objeto
validateattributesVerificar a validade do array
whosListar as variáveis no espaço de trabalho, incluindo tamanho e tipo

Exemplo

Crie um arquivo de script usando o seguinte código-

x = 3
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
 
x = 23.54
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
 
x = [1 2 3]
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
 
x = 'Hello'
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)

Quando o arquivo for executado, ele produzirá os seguintes resultados-

x = 3
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x = 23.540
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x =
          1          2          3
ans = 0
ans = 1
ans = 1
ans = 0
x = Hello
ans = 0
ans = 0
ans = 1
ans = 0
ans = 0