MATLAB 數據類型

MATLAB的數據類型主要包括:數字、字元串、矩陣、單元型數據及結構型數據等,限於篇幅我們將重點介紹其中幾個常用類型。

1 變數與常量

MATLAB並不要求事先對所使用的變數進行聲明,也不需要指定變數類型,MATLAB語言會自動依據所賦予變數的值或對變數所進行的操作來識別變數的類型。在賦值過程中如果賦值變數已存在時,MATLAB語言將使用新值代替舊值,並以新值類型代替舊值類型。

在MATLAB語言中變數的命名應遵循如下規則:

(1)變數名區分大小寫。

(2)變數名長度不超63位,第31個字元之後的字元將被MATLAB語言所忽略。

(3)變數名以字母開頭,可以是字母、數字、下劃線組成,但不能使用標點。

與其他的程序設計語言相同,在MATLAB語言中也存在變數作用域的問題。在未加特殊說明的情況下,MATLAB語言將所識別的一切變數視為局部變數,即僅在其使用的M文件內有效。若要將變數定義為全局變數,則應當對變數進行說明,即在該變數前加關鍵字global。一般來說全局變數均用大寫的英文字元表示。

MATLAB語言本身也具有一些預定義的變數,這些特殊的變數稱為常量。

MATLAB有些永久常數(Permanent constants),雖然在工作空間中看不 到,但使用者可直接取用,例如:

pi

ans = 3.1416

下表即為MATLAB常用到的永久常數。

小整理:MATLAB的永久常數 i或j:基本虛數單位

eps:系統的浮點(Floating-point)精確度

inf:無限大, 例如1/0 nan或NaN:非數值(Not a number) ,例如0/0

pi:圓周率 p(= 3.1415926...)

realmax:系統所能表示的最大數值

realmin:系統所能表示的最小數值

nargin: 函數的輸入引數個數

nargin: 函數的輸出引數個數

在MATLAB語言中,定義變數時應避免與常量名重複,以防改變這些常量的值,如果已改變了某外常量的值,可以通過「clear+常量名」命令恢復該常量的初始設定值(當然,也可通過重新啟動MATLAB系統來恢復這些常量值)。

2 數字變數的運算及顯示格式

賦值語句

(1) 變數=表達式

(2) 表達式 其中表達式是用運算符將有關運算量連接起來的式子,其結果是一個矩陣。

MALAB是以矩陣為基本運算單元的,而構成數值矩陣的基本單元是數字。

對於簡單的數字運算,可以直接在命令窗口中以平常慣用的形式輸入,如計算2和3的乘積再加1時,可以直接輸入:

>> 1+2*3

ans=

7

這裡「ans」是指當前的計算結果,若計算時用戶沒有對表達式設定變數,系統就自動賦當前結果給「ans」變數。用戶也可以輸入:

>> a=1+2*3

a=

7

此時系統就把計算結果賦給指定的變數a了。

數據的輸出格式

MATLAB用十進位數表示一個常數,具體可採用日常記數法和科學記數法兩種表示方法。 在一般情況下,MATLAB內部每一個數據元素都是用雙精度數來表示和存儲的。數據輸出時用戶可以用format命令設置或改變數據輸出格式。

format命令的格式為:

format 格式符 其中格式符決定數據的輸出格式。

MATLAB語言中數值有多種顯示形式,在預設情況下,若數據為整數,則就以整數表示;若數據為實數,則以保留小數點後4位的精度近似表示。MATLAB語言提供了10種數據顯示格式,常用的有下述幾種格式:

short 小數點後4位(系統默認值)

long 小數點後14位

short e 5位指數形式

long e 15位指數形式

MATLAB語言還提供了複數的表達和運算功能。在MATLAB語言中,複數的基本單位表示為i或j。在表達簡單數數值時虛部的數值與i、j之間可以不使用乘號,但是如果是表達式,則必須使用乘號以識別虛部符號。

3 字元串

字元和字元串運算是各種高級語言必不可少的部分,MATLAB中的字元串是其進行符號運算表達式的基本構成單元。

在MATLAB中,字元串和字元數組基本上是等價的;所有的字元串都用單引號進行輸入或賦值(當然也可以用函數char來生成)。字元串的每個字元(包括空格)都是字元數組的一個元素。例如:

>>s=』matrix laboratory』;

s=

matrix laboratory

>> size(s) % size查看數組的維數

ans=

1 17

另外,由於MATLAB對字元串的操作與C語言幾乎完全相同這裡不在贅述。


推薦閱讀:

【乾貨合集】看完這些乾貨,再說你因為「怕蛇」,所以學不好 Python!
Jupyter Notebook數據科學高效技巧
關於Long long int, long int ,int 和short int的長度大小區分

TAG:MATLAB | 數據 | 數據類型 |