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

结构说明

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
结构说明有原型法和类型别名法2种定义方法。
% c" E4 C% ^& c, ?6 K; y1)原型法
" [" ^) ?' G' {- x, O2 D(1)声明结构类型的同时定义变量名
: R0 ^* ?1 Q- \: k+ V2 {; H格式如下:
+ S/ H: y% }% w! q' J! a[存储类说明符]  struct  [结构原型名]: R- C5 t& U( l2 f( Z- A
                     {类型说明标识符[,标识符...];
2 i0 e. m- S+ I0 l& K/ ]7 T" U6 Z
  t" Z; v+ |3 K' H& t- O% _& E类型说明标识符[,标识符...];
' Q$ j5 M* ]( v" i                                          .1 ~5 q9 c: Z( ?# f2 n* n5 w8 q
                                          .
6 `& F2 H& ?: q+ p+ a; z                                          .4 E- y! o3 j+ L  ?0 N; N  p8 w- j
                     }标识符[={初值表}[,标识符[={初值表}]...]];4 z# y+ G6 m% l- m: v
其中:存储类说明符有static、extern;结构原型名有结构名、*结构指针名。5 h; ^2 H& t5 g5 k+ f6 M
(2)先声明结构类型再定义变量名
! ], w( Y0 i6 s$ g  j. F& }2 {- E9 D格式如下:
) c" C$ ~* E6 L0 n* M& L, E4 \struct 结构原型名
( N& v/ r; L% E4 x! k, Z       {类型说明标识符[,标识符...];7 T4 h: v) Z, E- l# V  r) I
              ..." {0 c/ j1 E0 y+ D4 k
      1 k$ W5 w( _6 b" S3 D- b% K
       }+ A" T4 x; g7 h' P* l' x# D
       [存储类说明符]    struct 结构原型名# [' P% R/ Q0 m0 j
标识符[={初值表}[,标识符[={初值表}]...];- F1 ]. f2 ~' p8 U
其中:存储类说明符有static、extern;结构原型有结构名、*结构指针名。
" h; E8 A) v& f/ J! n' V类型别名法* ]  d( F" W" O* q$ x! t
先为结构原型名起别名,再用别名做定义说明。其格式如下:6 c4 s9 P8 {# ~: s
typedef    struct[结构原型名]
* ~) R+ k8 B6 D+ K7 a3 o                            {类型说明符 标识符[,标识符...];
  b% U. y% @6 J' w
& C1 u4 i. o! P% h类型说明符 标识符[,标识符...];. E- a/ R9 G0 _7 u( Y7 x
                             .... V4 M& P8 b, ~0 S4 R
                            }结构别名
) w9 }) v- H- B[存储类说明符]  结构别名 标识符[={初值表}[,标识符[={初值表}]…]];
* `6 ~% `/ B) Y7 m( p$ I其中:存储类说明符有static、extern;结构原型名有结构体、*结构指针名。结构别名习惯上用大写字符。[结构原型名]可用可不用,习惯上不用。因为一般来说,别名更具特色。
) \( a" G! ^3 H6 ?' n9 I/ s8 l) R说明:* @3 h. o+ C4 d! {  i
结构由各种数据类型的成员组成。成员之间没有次序关系,访问成员不按次序,而用结构成员名。% x: a, z/ L# O) n. y
成员可以是各种简单变量类型个符合变量类型,也可以是数组;数组的元素也可以是结构,即结构和数组可以互为嵌套。
# p/ m' l) j$ R- w7 l6 v只有在定义性说明时,才可以整体性地位结构赋初值。在程序中,不能用语句整体性地址给结构赋值,但可以对程序员个别第进行赋值和去存操作。
, k! F+ y6 @' ?8 @/ O存取成员的方法有2种:结构名·成员名;结构指针名->成员名。前者是结构首地址加偏移法,后者是指针值加偏移法。只要结构指针指在结构的首地址上,二者便访问同义成员。& N+ f' t( Q; |) Q
对结构只能进行2中运算:对结构成员的访问和取结构的地址(&结构名)

该用户从未签到

2#
发表于 2016-7-14 14:17 | 只看该作者
支持楼主!谢谢分享!
1 b+ P) A3 W" x/ A( u6 }

该用户从未签到

3#
发表于 2016-7-14 14:48 | 只看该作者
感谢楼主分享!!!& }1 [& e4 r  F, k/ c1 L; |' _4 H
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

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

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

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

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