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

结构说明

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
结构说明有原型法和类型别名法2种定义方法。
% \: s( N- a& f& S8 f2 S1)原型法) @0 @$ \) o% @/ F: g% W# |
(1)声明结构类型的同时定义变量名" p8 f7 I1 w2 r. j; \+ q; e: a/ s
格式如下:6 M  h3 K0 [* A- F0 ]
[存储类说明符]  struct  [结构原型名]: K" O, j0 \4 I5 w& o1 {
                     {类型说明标识符[,标识符...];: s& l8 q( ?' |+ E5 l0 r3 \/ b
/ ~4 I! w, y& L; `+ ]
类型说明标识符[,标识符...];# o# {* @& I5 u0 F) e( m( v
                                          .
+ T: t% x' h7 Y- w, m                                          .4 C$ ^! n6 }9 v& m2 q* d7 k
                                          .
+ f: m& e$ d3 q                     }标识符[={初值表}[,标识符[={初值表}]...]];1 F7 [7 M) c. i) w
其中:存储类说明符有static、extern;结构原型名有结构名、*结构指针名。
. L, ^0 k/ O! G0 P3 B1 g(2)先声明结构类型再定义变量名+ p; {0 ]* S  O; M+ I
格式如下:' Q( l) f0 i/ Z* {; S$ E" K* Z$ Y
struct 结构原型名! @+ j' i3 y5 G
       {类型说明标识符[,标识符...];0 F4 ?3 I" I/ a) S" I, z! p
              ...2 N1 Y9 q. E$ e% o6 J1 D* d* M
      
2 X6 B7 Y5 H5 b  F; A- ^4 G       }
3 b2 j  t' Z7 @5 S. V  O6 f       [存储类说明符]    struct 结构原型名: {9 }5 H0 `2 ~' s
标识符[={初值表}[,标识符[={初值表}]...];/ A! v1 P, L& l) g8 [. ^7 s, g4 M# o
其中:存储类说明符有static、extern;结构原型有结构名、*结构指针名。
* N) F: W: C; s# N* x, q. B: g类型别名法
; D& y+ ]1 t1 D# v" H先为结构原型名起别名,再用别名做定义说明。其格式如下:0 p+ K9 ?+ M, D6 i* g7 b0 F
typedef    struct[结构原型名]
' q0 _) {) K5 H* H( j* P                            {类型说明符 标识符[,标识符...];
4 e/ j- h  P1 c  y
+ M" Q0 N- t) q( O# ?0 A类型说明符 标识符[,标识符...];7 x# V+ y- Y  D2 k7 r
                             ...
4 c% |" Q  ^; B+ \* G                            }结构别名  U( O! g! w0 Z/ M* C2 E
[存储类说明符]  结构别名 标识符[={初值表}[,标识符[={初值表}]…]];
) ]7 e( ~0 Y+ V其中:存储类说明符有static、extern;结构原型名有结构体、*结构指针名。结构别名习惯上用大写字符。[结构原型名]可用可不用,习惯上不用。因为一般来说,别名更具特色。1 M5 D- n$ |+ ~3 N4 o
说明:) V; _; O2 x# K4 [5 a
结构由各种数据类型的成员组成。成员之间没有次序关系,访问成员不按次序,而用结构成员名。; V; b9 U% w4 Z: _: N
成员可以是各种简单变量类型个符合变量类型,也可以是数组;数组的元素也可以是结构,即结构和数组可以互为嵌套。
% k1 A4 T& F4 T8 }只有在定义性说明时,才可以整体性地位结构赋初值。在程序中,不能用语句整体性地址给结构赋值,但可以对程序员个别第进行赋值和去存操作。
: M5 r$ T0 A& x9 a存取成员的方法有2种:结构名·成员名;结构指针名->成员名。前者是结构首地址加偏移法,后者是指针值加偏移法。只要结构指针指在结构的首地址上,二者便访问同义成员。
1 y+ E& o; I5 j( \; q对结构只能进行2中运算:对结构成员的访问和取结构的地址(&结构名)

该用户从未签到

2#
发表于 2016-7-14 14:17 | 只看该作者
支持楼主!谢谢分享!' _9 i$ |# n1 m2 c' ]

该用户从未签到

3#
发表于 2016-7-14 14:48 | 只看该作者
感谢楼主分享!!!0 e% y* ~8 H1 ^( m. F
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 00:44 , Processed in 0.156250 second(s), 23 queries , Gzip On.

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

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

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