QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3243|回复: 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 每当遇到一个新的变量名称,创建变量,并分配适当的内存空间。% y; `. Y5 q* R" {  R8 v
    0 w  V6 f/ b2 d4 L. S7 B; J
    如果变量已经存在,则MATLAB替换以新的内容的原始内容,并分配新的存储空间,在必要的情况下。( N  Q& c7 C+ Z6 p
    . @/ i, H- n" q7 Y4 {
    例如,* j: e. K6 I7 w% s  J; O

    * V: F4 s* ~5 _: }! dTotal = 42% P5 F& g1 q6 _. [3 X# L* v
    上述语句创建了一个名为“Total” 的 1-1 矩阵存储值42。, l& i0 O  T( P% h4 t2 O

    ; f' c# \* h$ ]- K  j" ]MATLAB中可用的数据类型
    : D% P: X. t  `+ p4 w7 j8 b9 U2 |7 {! ?2 e. ?
    MATLAB 提供15个基本数据类型。每种数据类型的数据存储在矩阵或阵列的形式。这个矩阵的大小或阵列是一个最低 0-0,这可以长大为任何规模大小的矩阵或数组。
    : j* H2 N) \, }1 ~6 M' x4 O) X: I1 |( i9 P4 z* w
    下表显示了在 MATLAB 中最常用的数据类型:, I& K; d) g$ Y+ F
    2 s3 l( j$ o& [1 W; d5 ^; F& ~/ c
    数据类型        描述
    ( `2 P- e2 j' ^2 Q! c2 Eint8        8-bit signed integer0 K. G: N7 y  e$ O6 }+ `5 n
    uint8        8-bit unsigned integer
    3 r: Y" K; h3 k: D) x) ~int16        16-bit signed integer
    * O2 z( J: C! r% c& ^uint16        16-bit unsigned integer
    5 a9 C) e& `4 D( x- A0 Kint32        32-bit signed integer
    7 \7 n; w: _4 l5 juint32        32-bit unsigned integer5 `0 Z4 l( @& {; C, _
    int64        64-bit signed integer
    ' |2 R" c' P1 Q5 l5 {- O5 q# n5 uuint64        64-bit unsigned integer
    , C! N" f$ C! Y8 |( E. R9 nsingle        single precision numerical data& W6 c7 g4 F7 Z8 D  z/ j
    double        double precision numerical data8 P1 _# O; M7 \$ f) _2 x! z: H3 _
    logical        logical values of 1 or 0, represent true and false respectively/ r$ [7 {" |1 w  ?1 h
    char        character data (strings are stored as vector of characters)- ]$ X) ~7 G3 i& a- q' |
    cell array        array of indexed cells, each capable of storing an array of a different dimension and data type/ O" x; x- q8 C' Z$ B' ^
    structure        C-like structures, each structure having named fields capable of storing an array of a different dimension and data type
    $ e# m' C; Z+ o6 Efunction handle        yiibaier to a function
    ! d$ i9 r( }" h9 P+ j- huser classes        objects constructed from a user-defined class7 W9 x2 Y5 G: U. `
    java classes        objects constructed from a Java class
    " D" P% d5 f! c7 y( |4 l例子( K/ r/ j& H. G' \4 S3 n. ^
    , [! y) ~9 q" B1 C& n, C( V! f8 S" t
    创建一个脚本文件,用下面的代码:1 q2 k7 M: m  G: Y$ h' I

    5 C- U8 b) W4 [# |: L$ O str = 'Hello World!': P/ e6 s9 n7 s; \
    n = 2345: ^3 F/ H1 x- p7 T  q
    d = double(n)
    ' g9 G! [6 U0 g* vun = uint32(789.50)6 \7 s* F4 d! @4 |7 S- C
    rn = 5678.92347$ h, Q2 }% G( g6 B3 l2 L
    c = int32(rn)
    ! h' A+ t$ V9 ?8 D+ N上面的代码编译和执行时,它会产生以下结果:
    ; D9 Q- r5 ]# g+ V% l7 u9 A0 I8 ~
    str =
    ' D" v7 w+ Y5 @6 n/ lHello World!
    % a7 @. {' ]% z/ P; r1 jn =
    & l% @; c& ?3 I) @8 \   2345
    3 Y3 F; S- w/ v) j( ~  [4 [d =
    $ H& `- G8 \) r- ]3 L# Q% Z2 j   23459 v3 J; m: i6 x/ l5 ?& L# B5 w! V
    un =
    5 O" T  D& s, u- A   790
    1 X% R6 u" x9 R# Q7 irn =* s; ]4 @( @3 y+ O) |8 d4 i
       5.6789e+03
    ; y# @, h" S# h. T' nc =
    - p) \1 `  y$ Q   5679
    # `2 ]; q  r4 u4 R% N; {4 b数据类型转换4 F. }! }5 R  E6 Q* D; n# C. |

    7 n1 V# t7 e# e- b- fMATLAB 提供各种函数,用于从一种数据类型转换到另一种。下表显示的数据类型转换函数:, L# i7 ?# p; L1 U% v

    ; z4 w' a% _3 ]- y2 z函数        目的/作用, i% r1 y8 h; ^6 w: I2 M# s) v
    char        Convert to character array (string)
    7 g1 p1 S" O& p/ c4 j" J/ ~; Qint2str        Convert integer data to string
    " K: f  l# a/ V8 {" G. Xmat2str        Convert matrix to string
    1 G+ O3 t0 E) tnum2str        Convert number to string
    4 C$ R& R& |9 Nstr2double        Convert string to double-precision value
    : n) a% d9 t5 x8 C3 @" Qstr2num        Convert string to number2 p* s3 }5 Q- M# c5 Z6 P
    native2unicode        Convert numeric bytes to Unicode characters; e- A  |- z8 c8 n! t
    unicode2native        Convert Unicode characters to numeric bytes
      X+ W1 j9 c0 J0 g% o$ Ubase2dec        Convert base N number string to decimal number( u* i- o+ J' ]! u0 `+ ?7 W- Q
    bin2dec        Convert binary number string to decimal number3 K( Y0 @5 F; t: k9 P: Z
    dec2base        Convert decimal to base N number in string0 ~1 h: D4 ?, i: N& y3 ^! l
    dec2bin        Convert decimal to binary number in string
    1 [1 D. G, `- n% p" Y- ^# `dec2hex        Convert decimal to hexadecimal number in string2 w( J6 t0 t  x0 }; w, j" H. v
    hex2dec        Convert hexadecimal number string to decimal number6 S$ F0 \- i* T: _
    hex2num        Convert hexadecimal number string to double-precision number2 A. C( Y! N1 l  b5 r7 o/ {
    num2hex        Convert singles and doubles to IEEE hexadecimal strings
    " H/ m) n2 p4 Q, p& G, Vcell2mat        Convert cell array to numeric array) L" {8 K/ o. L# U
    cell2struct        Convert cell array to structure array
    # P) O, l1 N7 l# U% t6 g! J/ vcellstr        Create cell array of strings from character array  D9 G" n! U. `4 D6 k
    mat2cell        Convert array to cell array with potentially different sized cells5 c! }" _+ Y( k  R% Q1 ^2 v, n
    num2cell        Convert array to cell array with consistently sized cells
    % a7 W- R1 W9 s+ }1 k6 `struct2cell        Convert structure to cell array
    7 X9 P* j) Q6 M4 X3 I; q测定的数据类型
    ( D: N/ L0 F2 ?; c+ ^! w: `. A5 z. ]! U+ I' J9 C* V" c
    MATLAB 提供各种函数标识数据类型的变量。5 R" j9 e5 Q: O3 K+ S: n, x0 L; F
    . L* Y% [  ]/ O% o) k# `
    下表提供了确定一个变量的数据类型的函数:
    - L( c+ }& U" ?& _- }- y# ^
    + U/ y- q  l/ T; P- l函数        目的/作用
    $ P. E7 M( v2 R  w8 B( ^is        Detect state
    9 t: u% @  [* U; E& {& U2 H& C: {isa        Determine if input is object of specified class
    : q5 \/ g1 N1 Viscell        Determine whether input is cell array
    8 T+ g; [6 l9 R- X( xiscellstr        Determine whether input is cell array of strings) Y8 `- {1 c0 E8 Y) \
    ischar        Determine whether item is character array* g& ?$ m% C1 g1 {9 A, \5 x. V
    isfield        Determine whether input is structure array field
    5 ^6 Z9 a; [4 c9 ~+ visfloat        Determine if input is floating-yiibai array
    1 p& Z$ e' R# k9 l# Z, @8 R' Xishghandle        True for Handle Graphics object handles
    , A  q; ~7 R( D! Pisinteger        Determine if input is integer array1 h: g6 o$ Q: m" w' ~2 b7 e$ J
    isjava        Determine if input is Java object+ D) l6 a- ~( R* f2 F! Z0 s
    islogical        Determine if input is logical array8 P( ]" A  x7 i6 n- k  _
    isnumeric        Determine if input is numeric array* m+ F+ o- |" Q& S+ m0 I
    isobject        Determine if input is MATLAB object. ?( c) H9 Y" h7 j% V! ~
    isreal        Check if input is real array, M3 W1 m. z1 J! \$ x+ ~) R
    isscalar        Determine whether input is scalar
    " D0 a! B# K. C; f  P5 m0 E- nisstr        Determine whether input is character array
    . ~# ?* Z, T% K" a+ Y/ Aisstruct        Determine whether input is structure array- d( w9 _2 ]# {' k* h# ^
    isvector        Determine whether input is vector$ Q* j  L9 N6 t  I; P5 ~+ c9 s0 s
    class        Determine class of object. g5 t4 L' [* ?+ u% ]. A
    validateattributes        Check validity of array
    % ~* s4 [2 p, I; Q$ g  C$ K7 Y% Hwhos        List variables in workspace, with sizes and types
    " Z' `* x" i2 v/ a6 m  E' I例子
    1 A" H! c1 C- P, o9 m! {' T" j
    - d% l) l- _7 t: o, Y7 j$ F创建一个脚本文件,用下面的代码:
    ; p1 V! i+ R7 L) E- E. K3 m0 P
    . j1 Q: h+ K' c$ Q) a) {x = 30 z' ~. f4 Y# O) G
    isinteger(x)
    & F' l6 f' }( [+ E+ \isfloat(x)8 a7 O& E2 y5 U
    isvector(x)5 Z: I# n* ~4 v
    isscalar(x)& o  }, F- w& q/ R+ R! V: Q
    isnumeric(x)
    ) K4 e6 B5 q! t( }6 `2 C6 B! ]$ X
    5 k  m7 ]0 M- m& \7 \$ Ox = 23.54
    $ ^" H% d3 l( m, z7 H8 m& ~isinteger(x)4 j* ^3 b* n7 x  O1 Q$ ?( @) k
    isfloat(x)
    - d) L* x/ j- v& L7 W9 t. n6 tisvector(x)
    ( H0 o( q" X; O) z6 Pisscalar(x)
    ; @1 h# K# s0 hisnumeric(x)6 y; ?4 x* O& }; P; @1 e. Z# @1 J: b
    + S% q" W3 P4 T" F9 j- i
    x = [1 2 3]* S8 w5 Q& Z6 A$ X6 c! \  B. g) ?
    isinteger(x)5 }: Q- f; k" A# ~: x+ Z4 W& j1 s% q3 N
    isfloat(x)
    # a2 b/ p6 b& G4 kisvector(x)
    . o) u: x: n: g3 A  v, K+ aisscalar(x)
    % ~! c+ o) Q' B9 `/ N* g$ F6 ?1 W$ m1 K0 [% q" p
    x = 'Hello'$ E+ q# B- B: W5 T2 }
    isinteger(x)9 S0 \: z( |# z3 |1 ]4 c
    isfloat(x)
    8 _7 M8 @' S- s- V3 u* [5 p3 Lisvector(x)
    1 s7 L- {4 V! }$ r( S2 V3 @isscalar(x)
    2 |  ?4 p) c$ J8 b" `isnumeric(x)
    % R5 G- V2 U) M; {% N当运行该文件,它会产生以下结果:
    - C. C$ |2 |! \7 s9 n8 e
    . c3 r# ?5 H  l+ A! k8 ]. \# @& @x =
    1 o) |- }" E! L7 e$ D. _- x     3
    " `% b, l! v8 X3 c) h6 ~ans =' s3 ~/ e5 C" P. W
         00 E& O/ E  u2 u8 g& ?1 A& e, |
    ans =6 H1 U# P' o" U1 @+ b
         1
    + X0 c. R! J  ]8 m  f, x4 \ans =2 b5 I+ d" N" a
         1
    3 o9 j  j  `$ B$ _. R, jans =9 w" ~! y0 ?, v- q. B# B0 _# l
         1
    5 g4 b4 B& M1 q$ D. Nans =: m, T! r. |% X; j4 C- k# m
         1
    $ e, U1 ~! b+ {% S9 P$ kx =$ U, r0 I3 O# V5 r" z, h: C
       23.5400. H, Q" X, r, W
    ans =
    & S2 E& T- C) J- r9 q6 u; G     0- L% v0 @. o6 ?# O5 ~; h
    ans =" w0 L& s# _# ~: U
         1
    % A7 W3 ?4 Y3 Zans =% n0 b/ E; X  `$ w! U4 I8 k
         1: a- O" s) Z1 F1 e0 ?8 ^
    ans =) a' g- U! V, `  @1 p
         1
    2 N! _7 M8 }9 _; k- gans =
    4 M( o0 i3 C6 z* |/ k) O6 o     1
    6 u' s3 y4 A% W# k1 ~4 v9 {x =
    " T9 P  H# R' t$ X# i+ _. V6 k     1     2     31 G! E0 ^. c: |. a; T+ U
    ans =
    5 `7 o( t9 ?+ g! R     0
    : ?9 I# a9 e* n! _# _5 {ans =5 J/ D# c+ _' W2 p
         1- A% p: B$ V+ Z
    ans =
    6 J* ^0 z2 J% y8 A' t     1! A. C+ a2 w- z4 e$ D% v9 ^( O
    ans =8 |- t9 h+ R% u( T" j
         0. s: H. V# B  d6 D3 ^, y* M
    x =
    ' F* I7 B6 _! B: k& |2 B7 PHello
    4 T3 m' x3 I7 o; K( L  uans =  t5 A3 w5 H" t* }' r0 I$ v
         05 Z% U- x' R& ^% X; ]2 _
    ans =
    # I8 Q3 m8 r" [5 {' t' w9 L. d     0
    : i# ~4 h% H3 N% Xans =
    : ?$ X( y! _0 [5 }     1
    * q: S3 ?7 o8 f; W( z/ ^ans =
    7 m& \! [: z1 `: Z5 W& Q     0
    : L/ S% K! W6 f4 b- V3 v; A- ~ans =
      H: M' v! _: J* ^% }9 C* u     0; U: c) X% p% s# c( l
    ) F* M" }- e: a* I( X
    ————————————————
    / O9 T* r9 O; m4 O版权声明:本文为CSDN博主「Phil__ming」的原创文章。
    0 M1 y5 x/ g4 @/ }9 i" |原文链接:https://blog.csdn.net/Poseidon__ming/article/details/750925757 n! `- R1 T* v3 t+ d$ x4 q& i+ q/ l
    $ j# A3 ~* I8 i3 s: k  v( m

    9 k6 E7 i+ e3 y7 q7 j
    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 16:58 , Processed in 0.555989 second(s), 56 queries .

    回顶部