English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
MATLABは型宣言や次元宣言を必要としません。MATLABが新しい変数名に出会うたびに、変数を作成し、適切なメモリ空間を割り当てます。
変数が既に存在する場合、MATLABは新しい内容で元の内容を置き換え、必要に応じて新しいストレージ空間を割り当てます。
例えば、
Total = 42
以下の文は「Total」という名前の1以上1行列,値42そこに保存されています。
MATLABは提供しています15の基本データタイプです。各データタイプは行列または配列形式のデータを保存します。この行列または配列のサイズは最小0×0で、任意の大きさの行列または配列に成長できます。
以下の表はMATLABで最もよく使用されるデータタイプを示しています-
番号 | データタイプと説明 |
---|---|
1 | int8 8ビット有符号整数 |
2 | uint8 8ビット無符号整数 |
3 | int16 16ビット有符号整数 |
4 | uint16 16ビット無符号整数 |
5 | int32 32ビット有符号整数 |
6 | uint32 32ビット無符号整数 |
7 | int64 64ビット有符号整数 |
8 | uint64 64ビット無符号整数 |
9 | single 単精度数值データ |
10 | double 双精度数值データ |
11 | logical logical1論理値 |
12 | char または0、それぞれがtrueとfalseを表します |
13 | 文字データ(文字列は文字ベクトルとして格納されます) cell array |
14 | インデックスセル配列、各セルが異なる次元とデータタイプの配列を格納できる structure |
15 | Cの構造体に似た構造で、異なる次元とデータタイプの配列を格納できる名前付きフィールドを持つ各構造体 function handle |
16 | 関数へのポインタ user classes |
17 | ユーザー定義のクラスから構築されたオブジェクト java classes |
以下のコードを使用してスクリプトファイルを作成します-
Javaクラスから構築されたオブジェクト str = Hello World! 2345 str = 'Hello World!' d = double(n)32un = uint789.5( un = 5678.92347 0)32c = int
(rn)-
上記のコードをコンパイルして実行すると、以下の結果が得られます str = Hello World! 2345 n = 2345 d = 790 un = 5678.9 rn = 5679
データタイプ変換-
関数 | 機能 |
---|---|
char | 値を一種のデータタイプから別のデータタイプに変換するための関数を提供するMATLABがあります。以下のテーブルは、データタイプ変換関数を示しています |
int2str | 整数データを文字列に変換します |
mat2str | 行列を文字列に変換します |
num2str | 数値を文字列に変換します |
str2double | 文字列を双精度値に変換します |
str2num | 文字列を数値に変換します |
native2unicode | 数字バイトをUnicode文字に変換します |
unicode2native | Unicode文字を数字バイトに変換します |
base2dec | N進数文字列を十進数に変換します |
bin2dec | 二進数文字列を十進数に変換します |
dec2base | 十進数を文字列中のN進数に変換します |
dec2bin | 十進数を文字列中の二進数に変換します |
dec2hex | 文字列中の十進数を十六進数に変換します |
hex2dec | 十六進数文字列を十進数に変換します |
hex2num | 十六進数文字列を双精度数に変換します |
num2hex | 単精度および双精度をIEEE十六進数文字列に変換します |
cell2mat | セル配列を数値配列に変換します |
cell2struct | セル配列を構造体配列に変換します |
cellstr | 文字配列から文字列のセル配列を作成します |
mat2cell | 配列をセルサイズが異なるセル配列に変換します |
num2cell | 配列を同じサイズのセル配列に変換します |
struct2cell | 構造体をセル配列に変換します |
MATLABは、変数のデータタイプを識別するためのさまざまな機能を提供しています。
以下のテーブルは、変数のデータタイプを確認する機能を提供します-
関数 | 機能 |
---|---|
is | 状態を検出します |
isa | 指定されたクラスのオブジェクトか確認します |
iscell | セル配列が入力されているか確認します |
iscellstr | 入力が文字列のセル配列であるか確認します |
ischar | プロジェクトが文字列配列であるか確認します |
isfield | 入力が構造配列のフィールドであるか確認します |
isfloat | 入力が浮点数配列であるか確認します |
ishghandle | グラフィックオブジェクトハンドルを処理するために適しています |
isinteger | 入力が整数配列であるか確認します |
isjava | 入力がJavaオブジェクトであるか確認します |
islogical | 入力が論理配列であるか確認します |
isnumeric | 入力が数値配列であるか確認します |
isobject | 入力がMATLABオブジェクトであるか確認します |
isreal | 入力が実数配列であるか確認します |
isscalar | 入力がスカラーであるか確認します |
isstr | 入力が文字列配列であるか確認します |
isstruct | 入力が構造配列であるか確認します |
isvector | 入力がベクターであるか確認します |
class | オブジェクトのカテゴリを確認します |
validateattributes | 配列の有効性を確認します |
whos | ワークスペース内の変数を、サイズと型を含めてリストアップします |
以下のコードを使用してスクリプトファイルを作成します-
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)
ファイルを実行すると、以下のような結果が生成されます-
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