- MATLAB/Simulink權威指南:開發環境、程序設計、系統仿真與案例實戰
- 徐國保 張冰 石麗梅 吳凡
- 1193字
- 2019-12-20 20:33:23
1.5 MATLAB數據類型
MATLAB R2016a定義了多種基本的數據類型,常見的有整型、浮點型、字符型和邏輯型等。MATLAB內部的任何數據類型,都是按照數組(矩陣)的形式進行存儲和運算。
整型數包括符號數和無符號數,浮點數包括單精度型和雙精度型。MATLAB R2016默認將所有數值都按照雙精度浮點數類型存儲和操作,可以使用類型轉換函數將不同數據類型相互轉換。
1.5.1 常量和變量
1.特殊常量
MATLAB有些固定的變量,稱為特殊常量。這些特殊常量具有特定的意義,用戶在定義變量名時應避免使用。表1-4給出了MATLAB的常用特殊常量。
表1-4 MATLAB的常用特殊常量

例如:

在MATLAB語言中,需要知道程序或者代碼的運行時間,可以使用計時函數tic/toc和etime兩種方法實現。
(1)tic/toc方法:tic在程序代碼開始時啟動計時器;toc放在程序代碼的最后,用于終止計時器,并返回計時時間即程序運行時間。
例如:

(2)etime方法使用etime函數來獲取程序運行時間,函數命令格式為

其中,t2和t1可以使用clock函數獲得,例如:

2.變量
變量是其值可以改變的量,是數值計算的基本單元。與其他高級語言不同,MATLAB變量使用無須事先定義和聲明,也不需要指定變量的數據類型。MATLAB語言可以自動根據變量值或對變量操作來識別變量類型。在變量賦值過程中,MATLAB語言自動使用新值替換舊值,用新值類型替換舊值類型。
MATLAB語言變量的命名應遵循下面的規則。
(1)變量名由字母、數字和下畫線組成,且第一個字符為字母,不能有空格和標點符號。例如,1a、a 1、_a、a%、b﹣1和變量a都是不合法的變量名。
(2)變量名區分大小寫。例如,P1Q、p1q、P1q和p1Q是4個不同的變量。
(3)變量名的長度上限為63個字符,第63個字符后面的字符被忽略。
(4)關鍵字或者系統的函數名不能作為變量,如if、while、for、function和who等。
需要指出,在MATLAB R2016a中,函數名和文件名都要遵循變量名的命名規則。
1.5.2 整數和浮點數
1.整數
MATLAB R2016a提供8種常見的整數類型,可以使用類型轉換函數將各種整數類型強制互相轉換。表1-5給出了MATLAB各種整數類型的取值范圍和類型轉換函數。
表1-5 各種整數類型的取值范圍和類型轉換函數

2.浮點數
在MATLAB R2016a中,浮點數包括單精度型(single)和雙精度型(double)。MATLAB默認的數據類型是雙精度型。單精度型的取值范圍是﹣3.4028×1038~3.4028×1038;雙精度型的取值范圍是﹣1.7977×10308~1.7977×10308,浮點數類型可以用類型轉換函數single()和double()互相轉換。
例如,按照如下方式在命令空間操作類型轉換函數。

工作空間窗口如圖1-17所示,該窗口直觀顯示了各種整數類型的值、大小、字節以及數據類型。

圖1-17 各種整數類型轉換工作空間窗口
1.5.3 復數
MATLAB用特殊變量i或j表示虛數的單位。MATLAB中復數運算可以直接進行。復數z可以通過以下幾種方式產生。
(1)z=a+b?i或者z=a+b?j,其中a為實部,b為虛部;
(2)z=a+bi或者z=a+bj;
(3)z=r?exp(i?thetha),其中r為半徑,thetha為相角(以弧度為單位);
(4)z=complex(a,b);
(5)z=a+b?sqrt(﹣1)。
MATLAB復數運算的常見函數如表1-6所示。
表1-6 常見的復數運算函數

【例1-1】 使用常見復數運算函數實現復數的創建和運算。
