QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3246|回复: 1
打印 上一主题 下一主题

MATLAB数据类型

[复制链接]
字体大小: 正常 放大

326

主题

32

听众

1万

积分

  • TA的每日心情
    慵懒
    2020-7-12 09:52
  • 签到天数: 116 天

    [LV.6]常住居民II

    管理员

    群组2018教师培训(呼和浩

    群组2017-05-04 量化投资实

    群组2017“草原杯”夏令营

    群组2018美赛冲刺培训

    群组2017 田老师国赛冲刺课

    跳转到指定楼层
    1#
    发表于 2020-1-20 16:59 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    MATLAB 并不需要任何类型的声明或维度报表。 MATLAB 每当遇到一个新的变量名称,创建变量,并分配适当的内存空间。  l. h) f" P! f0 _/ a2 ~/ W
    . i2 `) w7 Y7 t
    如果变量已经存在,则MATLAB替换以新的内容的原始内容,并分配新的存储空间,在必要的情况下。8 m: `, E& Y1 s
      \5 r2 t  n- M% D3 L% h
    例如,4 S% J0 |2 i, g: W# |/ S6 \

    0 O9 W: h' u: v, B, \Total = 42
    0 F) V. Z+ L, ?! k  g, N7 `上述语句创建了一个名为“Total” 的 1-1 矩阵存储值42。
    ; `+ S; x0 g# g1 T1 N$ g
    3 `! T- V# N" ~7 s7 nMATLAB中可用的数据类型
    , {8 d7 q5 a9 k6 A2 P
    3 R$ ?: p3 a" D0 M! qMATLAB 提供15个基本数据类型。每种数据类型的数据存储在矩阵或阵列的形式。这个矩阵的大小或阵列是一个最低 0-0,这可以长大为任何规模大小的矩阵或数组。, _  h$ C! k% l; {1 L
    1 K: C& r/ ]" V5 |. z& `
    下表显示了在 MATLAB 中最常用的数据类型:$ o0 F& B& V; ^3 j' W
    ; W5 a" a, l, |
    数据类型        描述
    & Y8 d- E0 D) U; D/ uint8        8-bit signed integer
    . ^5 V( A' b/ k; ~7 r  }) h$ zuint8        8-bit unsigned integer  K; K$ M6 C' M- @- g
    int16        16-bit signed integer
    $ \; [- Z$ |/ w! B1 y3 E0 \uint16        16-bit unsigned integer
    5 |" y5 M9 e) a9 jint32        32-bit signed integer* j, t% s  h! c- |+ ?/ N( C
    uint32        32-bit unsigned integer4 Q2 s$ W: h  ~% ?' Q
    int64        64-bit signed integer
    8 f" G$ U& {9 H+ c" _# suint64        64-bit unsigned integer
      G0 E8 O, o7 B# v  `1 ~6 c  qsingle        single precision numerical data/ N: Q4 k# J( F# |1 ^
    double        double precision numerical data
    9 l; n8 ~9 t  b8 T: flogical        logical values of 1 or 0, represent true and false respectively  U% O, x- K: K! u0 {$ D
    char        character data (strings are stored as vector of characters)
    & l, g1 t% [/ wcell array        array of indexed cells, each capable of storing an array of a different dimension and data type8 V; @$ ^& b2 A& O. a7 z: z7 r" y* |
    structure        C-like structures, each structure having named fields capable of storing an array of a different dimension and data type8 Q) Y* @- m8 T6 ^+ S0 w
    function handle        yiibaier to a function1 i; L0 ]/ _& {$ ], v: u5 L
    user classes        objects constructed from a user-defined class$ u$ R% ^2 G: i  [5 \
    java classes        objects constructed from a Java class6 Y# b1 b: l4 @# F; V0 u& A
    例子
    : R, C7 G, z: Y) _1 }5 K' o: v; k
    7 |; ^0 R: B7 Z  n创建一个脚本文件,用下面的代码:
    - P* B+ m; w  v6 ~/ @/ J9 r: H: @$ w, j
    str = 'Hello World!'
    - a. l  v+ f9 e% Dn = 2345
    " |, E5 F; e9 c! c3 U/ P5 Pd = double(n)
    3 J# m1 K' E5 iun = uint32(789.50)! V6 c$ [0 a. e/ ^' h
    rn = 5678.92347
    % I) X& z* v' B; s! i- xc = int32(rn)4 _; }9 \3 ]; H9 {# O' W7 X2 W6 g
    上面的代码编译和执行时,它会产生以下结果:
    0 H# v  k3 w3 O
    " |* O) e8 \. W$ @3 o* y# Mstr =6 a. l. _/ {- X' N0 M7 a7 q
    Hello World!7 b, T! y# w8 O
    n =
    5 a$ m7 H0 q; a5 A/ G9 |0 r8 N& ]1 S   2345" W1 Z. t% K5 y2 \5 y$ g
    d =
    : N( F$ h1 ]) {   2345
    & z) O' X; E0 kun =' a- A4 x5 T7 U  L9 I5 y9 A$ f) ?/ L( k
       790
    ' m, `- R1 u3 h- T1 U. ?$ S2 \" |rn =
    ! ?- d! p) N- V  \; Z' ^& s8 G+ {   5.6789e+038 [. V9 ]9 Y- Q( m( \3 M6 v
    c =
    ! t7 H4 c4 D6 T* s) O  v0 d   5679
    ' I- R& d8 b. V# I' Z数据类型转换
    7 Y3 @' V7 C% G
    3 W" A( w! y* }$ }* p5 PMATLAB 提供各种函数,用于从一种数据类型转换到另一种。下表显示的数据类型转换函数:) [- ~! k$ }! J7 ~% w7 v
      D) S: q, d; E. A! Z, |" o  m
    函数        目的/作用
    ' p0 [7 q" l2 I5 d9 L( J2 Zchar        Convert to character array (string)$ n2 y1 ~/ s& p6 D" T5 P9 o
    int2str        Convert integer data to string
    ) t/ y+ ~. Y, `  h1 W* xmat2str        Convert matrix to string+ X2 U# c; p* |/ c
    num2str        Convert number to string5 }: r  u9 p. ^9 I# R
    str2double        Convert string to double-precision value' C  d# K* F% _5 a6 H; z4 E$ k
    str2num        Convert string to number! o1 b& `' }/ C1 ]8 x1 X
    native2unicode        Convert numeric bytes to Unicode characters
    * S* ?7 L. [; I# b1 a+ \9 N/ L& Aunicode2native        Convert Unicode characters to numeric bytes
    + y( ?* n9 c4 L9 e+ h( e% f8 M$ ibase2dec        Convert base N number string to decimal number
    " S- J" S* q& s: H0 @  {bin2dec        Convert binary number string to decimal number
      p2 Z, {/ U3 fdec2base        Convert decimal to base N number in string7 Y. O5 N/ ]: W2 c
    dec2bin        Convert decimal to binary number in string4 E4 \1 T1 r2 t# ]- f' g' b7 W
    dec2hex        Convert decimal to hexadecimal number in string" j- q" ]6 g( t: W' C& ~
    hex2dec        Convert hexadecimal number string to decimal number
    * k" u& M" K  r: `; `hex2num        Convert hexadecimal number string to double-precision number
    4 b3 K3 L: u4 a. Ynum2hex        Convert singles and doubles to IEEE hexadecimal strings3 N! l1 K! r: E5 O) I
    cell2mat        Convert cell array to numeric array
      F7 Q8 `. a2 L$ Y+ k4 B/ C$ tcell2struct        Convert cell array to structure array0 H/ |0 X9 U( N6 ?/ z/ B
    cellstr        Create cell array of strings from character array
    ; }5 B0 K9 |$ \/ q+ C/ x. X" W3 Bmat2cell        Convert array to cell array with potentially different sized cells
    ( O0 t( o5 z9 t& [num2cell        Convert array to cell array with consistently sized cells
    1 R6 {8 B! n9 Q- z! h* P! Y) r% n0 Mstruct2cell        Convert structure to cell array
    9 M7 J8 X; C. q7 z5 I% J2 p% B测定的数据类型; @( q% Z5 Y% W

    9 g1 |# ]. w) J( p7 {MATLAB 提供各种函数标识数据类型的变量。
    * d; z1 X3 C% ~% Z; x* Y3 @% _# c& ]. W+ y
    下表提供了确定一个变量的数据类型的函数:+ O" r8 ~+ W3 ^+ `& A5 o9 x

    $ @6 D  g. q5 _# A函数        目的/作用! {2 m# q: I- e- c% i( n/ a7 ?
    is        Detect state
    0 _5 X0 m& Y3 Xisa        Determine if input is object of specified class
    " T; `% V. y& X: g) k+ Niscell        Determine whether input is cell array( A4 _# c+ @% `& _5 u) s2 n
    iscellstr        Determine whether input is cell array of strings
    % j  L; v7 |3 j" [/ xischar        Determine whether item is character array# y& n7 ?  [' z  d1 k6 w. Y# p
    isfield        Determine whether input is structure array field; G. E% H. }2 K4 A0 h% I
    isfloat        Determine if input is floating-yiibai array
    1 U4 |3 M* n& z6 i9 U( W6 m3 Oishghandle        True for Handle Graphics object handles
    ) M( k3 c7 i3 \) C' Visinteger        Determine if input is integer array# W7 B! b" x7 D+ q3 ^
    isjava        Determine if input is Java object, R4 d# V- N* u6 i
    islogical        Determine if input is logical array0 s9 d8 U6 U' `% B. l. Y
    isnumeric        Determine if input is numeric array
    $ I7 _! e7 v* y( G( O& \isobject        Determine if input is MATLAB object# ]- b$ ^1 }, B; I
    isreal        Check if input is real array
    7 F; I' h' g7 p, Y$ hisscalar        Determine whether input is scalar8 {& [& m% p. j  [/ ?
    isstr        Determine whether input is character array
    ; ]) l) R* q2 j6 i% q7 ~isstruct        Determine whether input is structure array
    1 z% q$ b% W; e2 Q( a1 u. Aisvector        Determine whether input is vector1 e+ O# V9 n, z3 n
    class        Determine class of object+ h. v! X4 A) g! E/ w
    validateattributes        Check validity of array8 p9 {( ?/ U: O# c# t- \; h
    whos        List variables in workspace, with sizes and types  q5 E4 o4 s+ l
    例子# T: ?3 ~1 k7 F/ T9 M
    3 F2 \" Z" r9 g# O, z, s: j/ z* o
    创建一个脚本文件,用下面的代码:# u$ J, n1 y/ M, U: E
    0 l) b/ l+ g' w# u! f* U  Q
    x = 3
    ( \/ m. P& @/ q( F  M8 tisinteger(x)$ i$ w0 u0 \+ C! {: k% Y4 L
    isfloat(x)
    9 \. L# u8 |/ S  S3 E" bisvector(x)7 P" y# {+ V! L6 W4 d) _  ?. a
    isscalar(x): m2 Q. V9 g  i8 n& S( S
    isnumeric(x)# l' e( J3 Y- Z/ k' b2 w5 ^' U

    9 i& b( j# K6 W& v8 V( wx = 23.54
    1 ]: b5 h- L/ Z; ^: _; y" Pisinteger(x)$ b) K. r  i1 n3 L  n- S1 N
    isfloat(x)
    : |. ~5 Z, Y: k+ s/ p% @isvector(x)0 r# Z4 y. L/ ^4 F8 G# u  p& m
    isscalar(x)/ A; ]. E/ `/ i/ v' |. G5 Q
    isnumeric(x)
    - O, O& j- V7 s) |% R* k& |
    + s; t# x, Z# d! qx = [1 2 3]
    / \9 a& F9 e# A( Z, z+ Eisinteger(x)
    * N3 k! {7 `; l' U' W3 Zisfloat(x)
    ( R8 B4 h0 @& Qisvector(x)& @% ~" @  c9 `
    isscalar(x)+ R: @( E8 H; N6 e& P. t
    + ~6 g# U9 P( V1 Y, B# q
    x = 'Hello'$ Q+ E  o1 T/ c8 s
    isinteger(x)7 H/ L. ]$ x- y: R
    isfloat(x)1 e) _4 V! e; {9 o( ?/ p7 o2 s4 _
    isvector(x)8 H5 b( B, U& d! d2 k3 W2 R
    isscalar(x)
    3 j: V1 l4 j; G) G3 ]2 q5 Tisnumeric(x)
    ( O+ E! n+ r9 ]! M当运行该文件,它会产生以下结果:9 g/ n" |: q, w3 S6 b& _7 O) J7 u
    1 T  b8 B9 `" p6 H* p- D
    x =
    5 F7 j. J. z$ _/ e5 \     3
    1 l. v# w: p, }& o" u. [5 Cans =
    * H: ]/ z+ M1 L4 o! @7 {2 c+ D     0# h9 O: X9 ^/ Q8 ?6 N! N
    ans =0 I; B9 u# Y- N
         1
    & [4 i# a* M3 M7 d" T, M8 aans =, L$ T7 G' x" ?1 t  p
         1
    : }3 f6 ], ?, e% k, S8 u6 Z/ Hans =
    7 B/ Q9 m, q& g, X+ P7 O6 K$ |     1
    / A  `8 h, a' n4 n5 ~ans =
    ( d% P9 y1 T' w! m3 v+ Q- N     1
    3 j7 x# x2 m; \  z8 ?4 T$ m6 ^x =& e) D3 h  {& c
       23.54005 k7 |2 o1 g. B! V( z- `
    ans =0 R* v, A- R: J+ J0 Z
         0# Q% U* M& S7 J. }6 J, H
    ans =
    9 T- a$ n8 k1 j$ r& |' G     1! k- z7 @/ \) q- Z& ]( v
    ans =
    " y( u; ?! t. t$ ?" p  e; q. `     1/ q- x5 ~4 |4 b& N) i
    ans =
    / Q6 l3 _) T" O, x2 _* a$ Y( E  p     1
    . J  c; }0 c9 |. {# R& x  s( a9 mans =
    & G: f+ C2 D- s6 I# Y     1
    1 _; I" V/ w3 z; ?x =
    + S4 o% t; ]7 I     1     2     3
    - e: w! C0 [  X, u7 A# Aans =
    # k3 b4 }7 l: z5 O" s' s     0
    + z7 R( G2 Q* x! j$ w( a! tans =
    + L( ]- _' h6 t* g/ m1 w: K+ F     1
    , x$ R3 P( B" g* j! l$ Z+ Hans =
    * L" f8 _6 a. l     1
    ) ]8 L, N7 q  H# ?0 a' f! zans =" r+ t* b8 o% x: U* r
         0& s2 B- z. K" Q# A$ m# }- b- l
    x =- p1 F* {  y9 Q7 [& r! F) X
    Hello% v9 o' }3 g0 z. w7 a% \4 t
    ans =
    + M; H1 A6 a7 W1 ~! X' a     0; |7 ^! U% L, H5 H( _2 |' T
    ans =
    ; P7 Q& [& W# _  H- U  T     0
      f* o/ Y' s* \$ l& B  b* ians =* Q. Y9 V$ A$ t, i) p+ K
         1
    7 S, d2 A# o4 Xans =
    : J; I, k  ]2 u( B+ O3 H     0' U& z2 |6 T! a: i
    ans =
    8 O+ e& {/ G# e& D, f; u9 x     0
    * v) h/ u- N) c$ Z: h5 O5 B% D
    7 }( ]4 H6 f8 }) i2 i: F9 W, Y1 T————————————————
    0 W* b* R+ y0 `/ F& i1 i3 }; n8 R版权声明:本文为CSDN博主「Phil__ming」的原创文章。
    . J7 @& a& D3 b) n; [. D9 _原文链接:https://blog.csdn.net/Poseidon__ming/article/details/75092575' U' |$ o4 L$ ]' \4 S

    5 y1 ]+ _/ X7 B8 A! J3 {1 B5 U0 L/ @3 A% V* T7 ?, i  }# H
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    0

    主题

    1

    听众

    59

    积分

    升级  56.84%

  • TA的每日心情
    开心
    2020-3-22 18:15
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    邮箱绑定达人

    群组数学建模美赛备战群组

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-11-26 19:42 , Processed in 0.685110 second(s), 57 queries .

    回顶部