MATLAB的數(shù)據(jù)類型主要包括:數(shù)字,、字符串、矩陣,、單元型數(shù)據(jù)及結(jié)構(gòu)型數(shù)據(jù)等,,限于篇幅我們將重點(diǎn)介紹其中幾個(gè)常用類型。 4.1 變量與常量 MATLAB并不要求事先對(duì)所使用的變量進(jìn)行聲明,也不需要指定變量類型,,MATLAB語(yǔ)言會(huì)自動(dòng)依據(jù)所賦予變量的值或?qū)ψ兞克M(jìn)行的操作來(lái)識(shí)別變量的類型,。在賦值過(guò)程中如果賦值變量已存在時(shí),MATLAB語(yǔ)言將使用新值代替舊值,,并以新值類型代替舊值類型,。 在MATLAB語(yǔ)言中變量的命名應(yīng)遵循如下規(guī)則: (1)變量名區(qū)分大小寫(xiě)。 (2)變量名長(zhǎng)度不超63位,,第31個(gè)字符之后的字符將被MATLAB語(yǔ)言所忽略,。 (3)變量名以字母開(kāi)頭,可以是字母,、數(shù)字,、下劃線組成,但不能使用標(biāo)點(diǎn),。 與其他的程序設(shè)計(jì)語(yǔ)言相同,在MATLAB語(yǔ)言中也存在變量作用域的問(wèn)題,。在未加特殊說(shuō)明的情況下,,MATLAB語(yǔ)言將所識(shí)別的一切變量視為局部變量,即僅在其使用的M文件內(nèi)有效,。若要將變量定義為全局變量,,則應(yīng)當(dāng)對(duì)變量進(jìn)行說(shuō)明,即在該變量前加關(guān)鍵字global,。一般來(lái)說(shuō)全局變量均用大寫(xiě)的英文字符表示,。 MATLAB語(yǔ)言本身也具有一些預(yù)定義的變量,這些特殊的變量稱為常量,。 MATLAB有些永久常數(shù)(Permanent constants),,雖然在工作空間中看不 到,但使用者可直接取用,,例如: pi ans = 3.1416 下表即為MATLAB常用到的永久常數(shù),。 小整理:MATLAB的永久常數(shù) i或j:基本虛數(shù)單位 eps:系統(tǒng)的浮點(diǎn)(Floating-point)精確度 inf:無(wú)限大, 例如1/0 nan或NaN:非數(shù)值(Not a number) ,,例如0/0 pi:圓周率 p(= 3.1415926...) realmax:系統(tǒng)所能表示的最大數(shù)值 realmin:系統(tǒng)所能表示的最小數(shù)值 nargin: 函數(shù)的輸入引數(shù)個(gè)數(shù) nargin: 函數(shù)的輸出引數(shù)個(gè)數(shù) 在MATLAB語(yǔ)言中,,定義變量時(shí)應(yīng)避免與常量名重復(fù),以防改變這些常量的值,,如果已改變了某外常量的值,,可以通過(guò)“clear+常量名”命令恢復(fù)該常量的初始設(shè)定值(當(dāng)然,也可通過(guò)重新啟動(dòng)MATLAB系統(tǒng)來(lái)恢復(fù)這些常量值),。 4.2 數(shù)字變量的運(yùn)算及顯示格式 賦值語(yǔ)句 (1) 變量=表達(dá)式 (2) 表達(dá)式 其中表達(dá)式是用運(yùn)算符將有關(guān)運(yùn)算量連接起來(lái)的式子,,其結(jié)果是一個(gè)矩陣。 MALAB是以矩陣為基本運(yùn)算單元的,,而構(gòu)成數(shù)值矩陣的基本單元是數(shù)字,。 對(duì)于簡(jiǎn)單的數(shù)字運(yùn)算,,可以直接在命令窗口中以平常慣用的形式輸入,如計(jì)算2和3的乘積再加1時(shí),,可以直接輸入: >> 1+2*3 ans= 7 這里“ans”是指當(dāng)前的計(jì)算結(jié)果,,若計(jì)算時(shí)用戶沒(méi)有對(duì)表達(dá)式設(shè)定變量,系統(tǒng)就自動(dòng)賦當(dāng)前結(jié)果給“ans”變量,。用戶也可以輸入: >> a=1+2*3 a= 7 此時(shí)系統(tǒng)就把計(jì)算結(jié)果賦給指定的變量a了,。 數(shù)據(jù)的輸出格式 MATLAB用十進(jìn)制數(shù)表示一個(gè)常數(shù),具體可采用日常記數(shù)法和科學(xué)記數(shù)法兩種表示方法,。 在一般情況下,,MATLAB內(nèi)部每一個(gè)數(shù)據(jù)元素都是用雙精度數(shù)來(lái)表示和存儲(chǔ)的。數(shù)據(jù)輸出時(shí)用戶可以用format命令設(shè)置或改變數(shù)據(jù)輸出格式,。 format命令的格式為: format 格式符 其中格式符決定數(shù)據(jù)的輸出格式,。 MATLAB語(yǔ)言中數(shù)值有多種顯示形式,在缺省情況下,,若數(shù)據(jù)為整數(shù),,則就以整數(shù)表示;若數(shù)據(jù)為實(shí)數(shù),,則以保留小數(shù)點(diǎn)后4位的精度近似表示,。MATLAB語(yǔ)言提供了10種數(shù)據(jù)顯示格式,常用的有下述幾種格式: short 小數(shù)點(diǎn)后4位(系統(tǒng)默認(rèn)值) long 小數(shù)點(diǎn)后14位 short e 5位指數(shù)形式 long e 15位指數(shù)形式 MATLAB語(yǔ)言還提供了復(fù)數(shù)的表達(dá)和運(yùn)算功能,。在MATLAB語(yǔ)言中,,復(fù)數(shù)的基本單位表示為i或j。在表達(dá)簡(jiǎn)單數(shù)數(shù)值時(shí)虛部的數(shù)值與i,、j之間可以不使用乘號(hào),,但是如果是表達(dá)式,則必須使用乘號(hào)以識(shí)別虛部符號(hào),。 4.3 字符串 字符和字符串運(yùn)算是各種高級(jí)語(yǔ)言必不可少的部分,,MATLAB中的字符串是其進(jìn)行符號(hào)運(yùn)算表達(dá)式的基本構(gòu)成單元。 在MATLAB中,,字符串和字符數(shù)組基本上是等價(jià)的,;所有的字符串都用單引號(hào)進(jìn)行輸入或賦值(當(dāng)然也可以用函數(shù)char來(lái)生成)。字符串的每個(gè)字符(包括空格)都是字符數(shù)組的一個(gè)元素,。例如: >>s=’matrix laboratory’; s= matrix laboratory >> size(s) % size查看數(shù)組的維數(shù) ans= 1 17 另外,,由于MATLAB對(duì)字符串的操作與C語(yǔ)言幾乎完全相同這里不在贅述。 4.4內(nèi)存變量的管理 1.內(nèi)存變量的刪除與修改 MATLAB工作空間窗口專門(mén)用于內(nèi)存變量的管理,。在工作空間窗口中可以顯示所有內(nèi)存變量的屬性,。當(dāng)選中某些變量后,再單擊Delete按鈕,就能刪除這些變量,。當(dāng)選中某些變量后,,再單擊Open按鈕,將進(jìn)入變量編輯器,。通過(guò)變量編輯器可以直接觀察變量中的具體元素,,也可修改變量中的具體元素。 clear命令用于刪除MATLAB工作空間中的變量,。 who和whos這兩個(gè)命令用于顯示在MATLAB工作空間中已經(jīng)駐留的變量名清單,。 who命令只顯示出駐留變量的名稱,whos在給出變量名的同時(shí),,還給出它們的大小,、所占字節(jié)數(shù)及數(shù)據(jù)類型等信息。 2.內(nèi)存變量文件 利用MAT文件可以把當(dāng)前MATLAB工作空間中的一些有用變量長(zhǎng)久地保留下來(lái),,擴(kuò)展名是.mat,。 MAT文件的生成和裝入由save和load命令來(lái)完成。常用格式為: save 文件名 [變量名表] [-append][-ascii] load 文件名 [變量名表] [-ascii] 其中,,文件名可以帶路徑,,但不需帶擴(kuò)展名.mat,命令隱含一定對(duì).mat文件進(jìn)行操作,。變量名表中的變量個(gè)數(shù)不限,只要內(nèi)存或文件中存在即可,,變量名之間以空格分隔,。當(dāng)變量名表省略時(shí),保存或裝入全部變量,。-ascii選項(xiàng)使文件以ASCII格式處理,,省略該選項(xiàng)時(shí)文件將以二進(jìn)制格式處理。save命令中的-append選項(xiàng)控制將變量追加到MAT文件中,。 |
|
來(lái)自: 陸瀟瀟 > 《3數(shù)據(jù)類型》