MATLAB 的數據類型


在MATLAB中有15種基本的數據類型:

8種整型數據類型、單精度浮點型(float)、雙精度浮點型(double)、邏輯型(logical)、字符串型(char)、單元數組型(cell)、結構體類型(struct)和函數句柄型(function_handle)。  【MATLAB中,默認的數值類型是 雙精度浮點型(double)

>> a1= int8(-6)    %有符號整數

a1 =

  int8

   -6
--------------------------------------------------
>> a2=uint16(34)   %無符號整數

a2 =

  uint16

   34
--------------------------------------------------
>> a3=single(3.5)   %單精度浮點數

a3 =

  single

    3.5000
--------------------------------------------------
>> a4=12 

a4 =

    12
--------------------------------------------------
>> a5=true   %邏輯型

a5 =

  logical

   1
--------------------------------------------------
>> b2{2,1}=100   %單元數組

b2 =

  2×1 cell 數組

    []
    [100]
--------------------------------------------------
>> b3='hello'   %字符串類型

b3 =

hello
--------------------------------------------------
>> b4.familyname='Zhang'  %結構體類型

b4 = 

  包含以下字段的 struct:

    familyname: 'Zhang'
--------------------------------------------------
>> c=@cos  %函數句柄

c =

  包含以下值的 function_handle:

    @cos

>> 

 

在MATLAB編程中,變量不需要定義就可以使用。在程序中,建立了采用不同數據類型的變量,並進行了輸出。在MATLAB的命令行窗口中輸入whos 后,輸出結果為:

 

1、整數

    8種整型數據類型分別為: 有符號整型:int8(1個字節), int16(2個字節), int32(4個字節), int64(8個字節);  無符號整型:uint8, uint16, uint32, uint64。(字節數同前)

2、浮點數

    浮點數和其他類型的數據進行運算時,返回的結果取決於運算中的其他數據類型。

3、復數

    可以采用賦值語句直接產生復數,也可以采用函數 complex()來產生復數。

4、邏輯類型數據

    包括邏輯真(用1表示,函數為true())、邏輯假(用0表示,函數為false())。

5、函數句柄(function_handle)

    在MATLAB中,函數句柄類似於C語言的指針,可以通過函數句柄來間接調用函數。函數句柄可以通過符號@后面跟函數名來創建。

    比如,程序 fhandle =@sin,創建了函數sin()的函數句柄 fhandle,以后就可以通過函數句柄 fhandle來間接調用函數 sin()。

6、結構體類型

    MATLAB的結構體類似於C語言中的結構體數據結構。結構體是按照成員變量名組織起來的不同數據類型數據的集合。

    每個成員變量用指針操作符 “.” 表示。例如 A.name 表示結構體變量 A 的 name 成員變量。

>> stu(1).name='Zhang';   %對成員變量 name 賦值
>> stu(1).age=20;   %對成員變量 age 賦值
>> stu(1).gender='Male';   %對成員變量 gender 賦值
>> stu(2).name='Li';   
>> stu(2).age=20;   
>> stu(2).gender='Male';   
>> stu   %顯示成員變量
-------------------------------------
stu = 

  包含以下字段的 1×2 struct 數組:

    name
    age
    gender
-------------------------------------
>> stu(1)

ans = 

  包含以下字段的 struct:

      name: 'Zhang'
       age: 20
    gender: 'Male'
-------------------------------------
>> stu(2)

ans = 

  包含以下字段的 struct:

      name: 'Li'
       age: 20
    gender: 'Male'

>>  

7、單元數組

    單元數組是一種比較特殊的數據類型,每個元素都以單元(cell)的形式存在。在MATLAB中,采用大括號 { }  建立單元數組,也可以采用函數cell()來建立單元數組。在獲取單元數組的元素時,下標需要用大括號括起來。

>>  c={'China','Good morning!';[1:3;2:4;3:5],20}   %建立單元數組

c =

  2×2 cell 數組

    'China'         'Good morning!'
    [3×3 double]    [           20]
---------------------------------------------
>> a1=c{1,1}    %獲取單元數組中元素的值

a1 =

China
---------------------------------------------
>> a2=c{1,2}    %獲取單元數組中元素的值

a2 =

Good morning!
---------------------------------------------
>> c{1,2}=[ ]    %刪除單元數組中元素的值===》》》將單元數組的某些元素設置為空[ ],可以將該元素刪除。

c =

  2×2 cell 數組

    'China'           []
    [3×3 double]    [20]

需要注意:采用成對的大括號({}) 只能獲取單個的元素,

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM