找回密码
 注册
关于网站域名变更的通知
查看: 622|回复: 8
打印 上一主题 下一主题

结构说明

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2016-8-11 14:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
结构说明有原型法和类型别名法2种定义方法。
( H( D, l$ \. m2 _3 B1)原型法
' q7 C' r* Y6 P" i(1)声明结构类型的同时定义变量名8 w0 s( c1 e: G) |5 q& Q5 @
格式如下:- f* W; x+ w" P+ E
[存储类说明符]  struct  [结构原型名]
; N/ `9 d6 `5 W& s& e                     {类型说明标识符[,标识符...];
. J4 R7 |1 ^5 I9 h5 Y! i* S  p
8 q3 P# ~' W, ^2 B2 O; j类型说明标识符[,标识符...];: b9 J: h8 k5 [
                                          .
9 z7 z$ l# C# O% \; M                                          .
& N( e3 N+ x. z                                          .  v0 r" M0 V5 o% l; W
                     }标识符[={初值表}[,标识符[={初值表}]...]];+ ^1 |9 C( H# U+ U
其中:存储类说明符有static、extern;结构原型名有结构名、*结构指针名。7 a2 I% n" N- U3 q8 \6 |# ?* T
(2)先声明结构类型再定义变量名; F$ }8 i; q( h" f- x
格式如下:* u; E8 K# u0 @' \' ]; ?% w6 O. b
struct 结构原型名
7 v- n- Q+ K2 x; P       {类型说明标识符[,标识符...];. \( X6 h! n2 ]* |$ v
              ...
, Y, U! c# i0 F* P      ) z. H! `5 n$ w# k. J' i
       }
3 K+ I% ?6 v% {( V' ^       [存储类说明符]    struct 结构原型名  R/ h7 P9 l8 I4 o8 ?
标识符[={初值表}[,标识符[={初值表}]...];
& ~/ D6 v" W0 W$ I; V' n其中:存储类说明符有static、extern;结构原型有结构名、*结构指针名。+ V# r  R/ M- V& p" Y
类型别名法2 ?6 _0 \0 I& D1 F3 Z' K) |
先为结构原型名起别名,再用别名做定义说明。其格式如下:
! a- ^. s/ {/ |+ r" C* i/ Etypedef    struct[结构原型名]/ A5 S' Q  W( ]8 _# X. S
                            {类型说明符 标识符[,标识符...];* l8 {5 R$ ?9 I
2 F, N9 @* h. b! z" z0 x
类型说明符 标识符[,标识符...];% ]& L$ ~& q$ I0 k* q1 r/ H
                             ...
  k$ [8 D0 x, G8 |0 e! ]3 V                            }结构别名, N* W7 N  _7 ], j) e. g. l# ?! L
[存储类说明符]  结构别名 标识符[={初值表}[,标识符[={初值表}]…]];6 J. v$ e: [% f' _4 g9 g& h
其中:存储类说明符有static、extern;结构原型名有结构体、*结构指针名。结构别名习惯上用大写字符。[结构原型名]可用可不用,习惯上不用。因为一般来说,别名更具特色。
) E- l- u, K! r5 s# J/ ~8 O说明:0 O8 X7 u  _. q" `$ _
结构由各种数据类型的成员组成。成员之间没有次序关系,访问成员不按次序,而用结构成员名。7 D) N% [& i. P2 X" E/ |5 y/ q
成员可以是各种简单变量类型个符合变量类型,也可以是数组;数组的元素也可以是结构,即结构和数组可以互为嵌套。6 Y2 }. v# }- l; T% M
只有在定义性说明时,才可以整体性地位结构赋初值。在程序中,不能用语句整体性地址给结构赋值,但可以对程序员个别第进行赋值和去存操作。
4 \  a$ u$ ^: d6 B. y8 x2 L: a. H存取成员的方法有2种:结构名·成员名;结构指针名->成员名。前者是结构首地址加偏移法,后者是指针值加偏移法。只要结构指针指在结构的首地址上,二者便访问同义成员。7 ~% r1 R; R( n. \! s, j
对结构只能进行2中运算:对结构成员的访问和取结构的地址(&结构名)

该用户从未签到

2#
发表于 2016-8-11 14:40 | 只看该作者
楼主辛苦了!
* m" }% t: W  ^/ f5 c9 \1 a4 }

该用户从未签到

3#
发表于 2016-8-12 10:49 | 只看该作者
楼主辛苦了!
, }* Z$ D9 y/ e* _+ C

该用户从未签到

4#
发表于 2016-8-12 11:33 | 只看该作者
好资料,果断收藏
- H& h) P4 V6 h8 i8 i1 i

该用户从未签到

5#
发表于 2016-8-12 14:16 | 只看该作者
路过捧场,谢谢分享!
$ n0 Z- ^/ C; I9 C( _

该用户从未签到

6#
发表于 2016-8-16 09:31 | 只看该作者
感谢楼主分享!!!
4 K, _/ l. b( y/ }, |6 p

该用户从未签到

7#
发表于 2016-8-19 14:37 | 只看该作者
学习中,谢谢分享/ @0 }( H3 B5 a5 H! R3 n  ?  w. i

该用户从未签到

8#
发表于 2016-8-22 10:30 | 只看该作者
资源多,学习不止步,共同进步
# M; G6 m1 z( h# n6 _! w  C
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-23 19:57 , Processed in 0.171875 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表