QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3484|回复: 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 每当遇到一个新的变量名称,创建变量,并分配适当的内存空间。6 n! _6 M6 @: v$ d3 D2 K( y0 A% S
    0 V9 c+ I4 ^+ W0 d& J
    如果变量已经存在,则MATLAB替换以新的内容的原始内容,并分配新的存储空间,在必要的情况下。
    8 @8 n5 k0 m( j9 x! D
    4 \" `% b: [- P" l( a6 L# P, a- ]例如,- N4 e' p2 u9 U6 S
    2 F; @# N+ X, e2 G  g) `3 m
    Total = 425 R" _! E4 }9 ~
    上述语句创建了一个名为“Total” 的 1-1 矩阵存储值42。/ }; x& f* M* o5 m! }9 d0 ]
    ; ^/ A% |1 v! j
    MATLAB中可用的数据类型
    0 D% ]# _: b  {0 J( N0 l& u
    & Q5 y4 M: ?* W7 o7 D$ J* V8 o% ~MATLAB 提供15个基本数据类型。每种数据类型的数据存储在矩阵或阵列的形式。这个矩阵的大小或阵列是一个最低 0-0,这可以长大为任何规模大小的矩阵或数组。
    * d- A6 G1 f  J, }
    4 i+ S- W5 M# K: Q* ?6 e下表显示了在 MATLAB 中最常用的数据类型:
      }$ k. q) _- P9 q% n
    ! P) X4 P+ L4 h8 A) {2 F( @数据类型        描述. v! h# F0 r! {5 h+ o% p9 l
    int8        8-bit signed integer
    ) }+ T( I; _  o0 p% s1 z( Puint8        8-bit unsigned integer
    ' i; g. a, ~7 Y3 F  [& pint16        16-bit signed integer1 m" i- P% M; @4 H7 l, Q- j6 I
    uint16        16-bit unsigned integer) P& |1 S3 O5 h8 N! A! S
    int32        32-bit signed integer, K, }: [" B6 g
    uint32        32-bit unsigned integer! \4 |' j' P: J* l/ b! R
    int64        64-bit signed integer. z+ x2 B6 ~5 c! U
    uint64        64-bit unsigned integer
    1 ], ]# n9 n1 {6 Z% b+ J# Nsingle        single precision numerical data/ o9 S- w  {% ?3 Q; g3 D
    double        double precision numerical data+ k3 R8 o" `7 L& [
    logical        logical values of 1 or 0, represent true and false respectively
    6 N- O  a! k. nchar        character data (strings are stored as vector of characters)
    6 N3 H1 V! F, u- d& ]" c0 `  Pcell array        array of indexed cells, each capable of storing an array of a different dimension and data type" j. q, s( A9 S3 f  m% j+ G" f
    structure        C-like structures, each structure having named fields capable of storing an array of a different dimension and data type
    1 a! x5 r: C* t6 |& k6 Ufunction handle        yiibaier to a function. J& T# x+ t, O2 Y
    user classes        objects constructed from a user-defined class# H6 r7 z; d% ~6 [0 X0 a. q
    java classes        objects constructed from a Java class
    / |& L4 T- k9 a8 w6 W; N# I  V例子
    7 i% i4 h# X/ H, E) G
    ! x. u! k2 y5 J" S- m& `' S+ \创建一个脚本文件,用下面的代码:
    * B1 x0 g6 l( A4 s8 W: H7 [9 T* o8 |( v. ^
    str = 'Hello World!'" Q$ M! A- t6 m
    n = 2345
    " Q3 A, A8 O" W6 |) Z, U1 {d = double(n)
    - A9 a6 s/ n) P2 v* k% K5 j% U3 x" eun = uint32(789.50)
    & F6 ]" l  O: P1 J5 x# jrn = 5678.92347' k9 g. `3 @2 K9 J  E# g) w
    c = int32(rn)! \0 X* m. O  x* B% ^0 f% J
    上面的代码编译和执行时,它会产生以下结果:! s1 o2 w) `9 i0 b

    ! p% {  _( g8 {4 P0 ~str =6 S  C. @: c" b# q# C8 M
    Hello World!
    ! a( E* F6 y/ R! E* y* `1 Y) nn =
    6 i- \2 I+ f$ ?" n9 b   23458 K/ b+ P; J# _
    d =+ U/ W2 f' A  v( {
       2345) k4 A0 n2 `, Q
    un =- k9 {1 v0 W- T& x7 [  k
       790
    0 e/ M7 f4 l+ }/ ^% ^- _rn =
    2 O  {3 S+ g5 C0 _9 ?   5.6789e+03- O% v" L1 L6 p" H+ A
    c =
    2 Y; Y1 @; s. }5 d+ W   5679
    9 Q6 H* x$ r- ?数据类型转换( M6 \' F7 ~  J; M  Q% Y7 f

    1 ^$ E; j1 R3 _9 w' f. hMATLAB 提供各种函数,用于从一种数据类型转换到另一种。下表显示的数据类型转换函数:. f3 x4 C2 S  W; d* q( J

    8 N2 r$ g% e9 ~函数        目的/作用. I7 b, m7 g! p, {4 a
    char        Convert to character array (string)& Z5 \5 \2 J8 y3 C
    int2str        Convert integer data to string% v2 q6 O4 j, `! }3 k
    mat2str        Convert matrix to string
    / }' z) S# w& w- ~! u. R2 ?( E* @, rnum2str        Convert number to string5 z3 K5 A8 w, V  `* A+ H
    str2double        Convert string to double-precision value
    # d1 Q$ R8 n- k% sstr2num        Convert string to number
    , a: |1 ]: ~+ [3 F5 inative2unicode        Convert numeric bytes to Unicode characters6 Y& I0 }) z' e& G; E& I2 e2 F
    unicode2native        Convert Unicode characters to numeric bytes
    % H5 I9 q+ [" h! V2 w7 `8 U4 s* Xbase2dec        Convert base N number string to decimal number+ u$ h; Q" w9 H' K6 U
    bin2dec        Convert binary number string to decimal number
    6 b/ y8 c3 j+ ~8 M7 V" A9 Mdec2base        Convert decimal to base N number in string
    * w+ S4 [9 B7 W. A5 q) Sdec2bin        Convert decimal to binary number in string
    ( s5 R) a5 D& k4 Q% y* Adec2hex        Convert decimal to hexadecimal number in string
    6 d" d. k2 @4 e2 w6 B; Ahex2dec        Convert hexadecimal number string to decimal number- u" k$ `; u0 {; M. i& @
    hex2num        Convert hexadecimal number string to double-precision number
    " R" M$ F5 _+ m6 F  ]6 M( x. d8 d, y) }0 ynum2hex        Convert singles and doubles to IEEE hexadecimal strings
    9 L8 t+ G) n9 |; l3 gcell2mat        Convert cell array to numeric array
    . P/ U4 S9 I% x! }( F' _8 @cell2struct        Convert cell array to structure array  ?! ]: L7 Y0 A7 j* r3 t4 x
    cellstr        Create cell array of strings from character array
    # x9 O& |7 q, z0 T6 r; A. X8 `# ^mat2cell        Convert array to cell array with potentially different sized cells1 j/ F8 H% \5 i! o5 A" T" E5 N9 Z
    num2cell        Convert array to cell array with consistently sized cells9 f6 R* J) y' g9 ?, {* F2 m
    struct2cell        Convert structure to cell array' K8 E# {% r# c( q( X3 G/ R% C# A$ p
    测定的数据类型
    ( Q! q9 s! F7 K+ X/ |6 a- c  u* X( F3 N0 ]. E
    MATLAB 提供各种函数标识数据类型的变量。( s! F! u; f  \% E

    * |8 q' e; X' Q2 u/ w% R下表提供了确定一个变量的数据类型的函数:
    8 ]( i) }, r$ A& ^
      B/ Q5 B3 ?, d& \0 O4 C4 W函数        目的/作用
      W) j: \& e" sis        Detect state2 H) e! h# {- k! K* I/ ^3 o
    isa        Determine if input is object of specified class
    # R* Q- m% d( w  N6 U9 v( Miscell        Determine whether input is cell array- e) @/ W+ c$ G2 j( }
    iscellstr        Determine whether input is cell array of strings) ?+ H! `. G2 U; N5 K. s
    ischar        Determine whether item is character array6 }- x: J- @8 @# n- i
    isfield        Determine whether input is structure array field) ~( ]6 D1 z( X+ j0 P
    isfloat        Determine if input is floating-yiibai array
    0 S; |! W% r7 c: ?ishghandle        True for Handle Graphics object handles, a. C- @0 j5 ?1 _* t$ N
    isinteger        Determine if input is integer array
    4 Z7 E! W/ f9 v# visjava        Determine if input is Java object
    % K! I* b9 {" N' `islogical        Determine if input is logical array
    6 s# l4 j( E5 V' Q% p. pisnumeric        Determine if input is numeric array
    % A- f3 c$ g' E4 H! l- L( Q. misobject        Determine if input is MATLAB object
    0 a5 b- D# M  g+ |  W- p) H# r# N# Hisreal        Check if input is real array' b9 O& l" l% ~
    isscalar        Determine whether input is scalar* O# o$ V( M+ j1 A7 Z- H
    isstr        Determine whether input is character array% v2 V+ @/ @5 G7 t2 x& X4 j
    isstruct        Determine whether input is structure array
    7 m* U- Z& E3 w! \9 D  I' A* b) u& f" qisvector        Determine whether input is vector
    $ y" V0 U+ p+ e' S( @3 a1 Sclass        Determine class of object
    % p" |. W+ W3 I" W6 cvalidateattributes        Check validity of array& G1 g# u% C2 v! Y  N: o' c
    whos        List variables in workspace, with sizes and types% \/ ]; q% o0 d6 c
    例子
    # e* B& ~; F. J+ n/ h" G
    ' d) r! W9 Q% F( f- \# q创建一个脚本文件,用下面的代码:
    7 ]+ M) `0 y, b* j9 M7 n- d) c
    7 T; l2 ~) [* d# E: F" o0 Q) }1 x- jx = 3
    8 Q2 |5 P# M# `. B0 T+ _8 I( Aisinteger(x)
    & Z& Q, {8 v. j) v% m8 l% u3 zisfloat(x)8 [/ \/ k$ o9 d6 ?# O
    isvector(x)* t) K; s5 d8 {
    isscalar(x)
    / J0 R4 ?6 m" h) S! j1 O7 k& j) bisnumeric(x)2 }7 {, P( z( M
    4 W; C0 a6 y+ R1 T+ S' h3 h0 M- x7 S8 U
    x = 23.54! q$ ~0 Q6 q% u+ S+ }
    isinteger(x)
    2 L. U* @" A/ \# T% y0 w3 Y, Misfloat(x)
    6 G" ?( Z% p" S8 Uisvector(x)+ N/ }4 K! a1 `8 I2 U3 [
    isscalar(x)
    . w: M% o' Y' t' jisnumeric(x)
    + r. f. u7 T7 ?/ r' y- i% F; q; e8 Y* p4 ?( D8 |; H
    x = [1 2 3]3 u, `# ?/ y# r* y- g! [/ p7 ~1 {
    isinteger(x)9 T6 r/ |4 e- L3 _1 j; M$ B6 T
    isfloat(x)
    : i- P  a6 ?- Q) t3 D+ K1 o; Gisvector(x)) ~2 U2 r0 T: ~, f. D
    isscalar(x)" ?) x+ O+ v% L% x0 D- C" y
    6 K' |+ p1 Y4 Y3 s
    x = 'Hello', H# ]1 k  L5 R9 d0 i4 {4 N
    isinteger(x)
    6 U1 o% f; w) D  u  ?6 _: R& Bisfloat(x)
    . A5 b+ n$ O- W: }isvector(x)
    9 }, q+ T# ?  ^6 w7 p: [# ?isscalar(x)
    , _8 r6 ~/ b; w: c$ |& A5 d$ \# d! fisnumeric(x)
    7 y0 E- y7 {* k1 D3 [- l当运行该文件,它会产生以下结果:
    % c6 ]6 a' ]6 y( Z7 J( f" D, l% N! `4 ~2 X6 ^1 y3 D1 _2 O4 z4 a
    x =
    * ^" ^: L+ v& H+ F     3
    & M# D0 d& x; ]% p( S8 m0 ?ans =
    ( a% x4 I/ W$ e6 ~" L: c# H     0
    # m; ^' O; B7 g% m) Q3 uans =1 j+ }3 F: x" {/ a
         1
    * p4 l, U% q5 mans =+ N. R, I4 f# B0 r
         1. Z4 g  N7 L- p( U' N3 u+ O' u3 m
    ans =
    : r+ I& A5 l7 ]3 U     1# p, D, ^9 {3 K
    ans =9 V  z$ E" o# E, s: j7 \
         1
    " I+ f0 v) ^" Fx =9 I1 D! \; B; ^; v
       23.5400
    7 Z; Y/ ?' B' cans =
    - C' [6 l* Q! r# N9 F     0: ]: I; P, u; a% k3 ^
    ans =
    4 F; I5 k2 E: ?7 ]" p6 r     1" C# i$ X& c1 x5 ^+ `2 p6 @
    ans =
    5 `: d) u8 o0 y# d$ l     1
    8 \( z, v5 s+ T0 d2 r, bans =
      k: F7 J, K4 e8 x" K  w     14 n; E; D7 ?' z8 X' K4 ?
    ans =, W; j, \+ [3 l; k0 [# Z+ n. Y
         1' c: d" q0 e$ S" }' m" j0 s2 t5 B5 \
    x =+ T% L% z4 E: p& c" b
         1     2     3$ q* k4 t$ e! \( p
    ans =, ~: z5 A$ n7 Y
         0
    - |5 c$ F3 a% v* e, Eans =
    ) V9 b8 h+ b0 D6 E     1
    / ?) ?4 {8 b2 N; H1 _( y! Qans =# E2 Y" f7 t! g' f
         1
    ; v2 F% Y" \6 T" l8 xans =( n3 ^' E% j! _9 i3 B% e
         0) @) S+ \7 P/ @* F
    x =3 l, J) H6 E5 e) v- r! _
    Hello/ Y7 H2 \) C5 `6 o2 N
    ans =7 ^: H' @3 n7 h4 H7 t) R
         0
    - o% n. u0 K, i& \! F+ l2 \4 |" Uans =* O* g" x5 A) A( x- b
         0
    2 [: v! y5 R7 |ans =
    + S( j( ~  O) ?7 m& f' \5 m, ?     1. l3 c: [, S) D+ j3 R
    ans =
    , R( N1 {7 M1 [- _. s# s! X     0
    : ?6 P! W! Q* f. S8 jans =
    " c7 w! S) o3 F5 }, V1 x, [     0& i1 l  u: s5 B  G" x& N7 z% I5 l
    * u2 m* W- y/ f# p8 L0 E- }3 I) m
    ————————————————
    6 |6 E0 i$ |/ ?9 ~* g3 L版权声明:本文为CSDN博主「Phil__ming」的原创文章。
    / F& r3 b/ |- {% ~3 T0 i; N$ z* n原文链接:https://blog.csdn.net/Poseidon__ming/article/details/75092575- i( b: V7 u. H3 e
    ; B: i3 O9 L% {& z: p- z2 _0 a5 q
    ' \3 q6 J4 a& u- w, O
    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, 2026-9-23 00:57 , Processed in 5.421204 second(s), 57 queries .

    回顶部