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

结构说明

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
结构说明有原型法和类型别名法2种定义方法。
3 S+ {# T+ c: f& T6 A6 L1)原型法
- h: s$ E1 ^6 X5 {  r8 W. E1 X(1)声明结构类型的同时定义变量名  t( \# }) m! f7 q: l" Q7 F3 B' ^8 o
格式如下:
$ j9 d5 e, D2 {[存储类说明符]  struct  [结构原型名]
' j) n( w# K4 d, J                     {类型说明标识符[,标识符...];& l9 W6 S+ v6 E* O$ Z& ]

8 H2 D/ l% T- t类型说明标识符[,标识符...];9 b/ B4 L. x9 ?, R0 @
                                          .
1 l5 y, `. N) [1 P% a                                          .
  Q" X& r' F9 y                                          .- ?6 V; R% b& g3 _  [6 V2 a9 r6 C
                     }标识符[={初值表}[,标识符[={初值表}]...]];5 r) |/ w  m$ c! j; `
其中:存储类说明符有static、extern;结构原型名有结构名、*结构指针名。9 a/ {5 I' P3 ?
(2)先声明结构类型再定义变量名9 Q) E4 l, H3 |( U& h( ~
格式如下:
. a7 n# B- s4 pstruct 结构原型名
( h! b' O1 h0 b4 r% Z       {类型说明标识符[,标识符...];/ M9 h3 B1 z* O/ f7 n
              .../ B1 Y/ Q! H1 U4 ?& @0 l0 Q* Y
      
- L* g2 Z+ W' B: T, ~8 x       }1 k) J& X# S5 e- X/ w' \' H# I
       [存储类说明符]    struct 结构原型名) z' y' I$ C+ d2 G$ n1 z$ j
标识符[={初值表}[,标识符[={初值表}]...];6 b' o  F0 s7 K2 n
其中:存储类说明符有static、extern;结构原型有结构名、*结构指针名。
6 B8 [. O* C. G9 J' L+ X$ X类型别名法4 c  [, T; ?/ E9 H/ w9 O7 l
先为结构原型名起别名,再用别名做定义说明。其格式如下:- Y$ Q' g8 R3 u/ k2 K2 q0 y. L; f
typedef    struct[结构原型名]
9 {/ `- Z7 c8 c) K. _$ m                            {类型说明符 标识符[,标识符...];
: o% T: g9 P, S% A7 M8 U8 X" P! m* C+ g0 \
类型说明符 标识符[,标识符...];5 P5 @2 r8 i  [3 n# q& Z" h" o4 H- I
                             ...7 r8 z+ o5 Q# Y; m" B
                            }结构别名
/ X/ @+ ], e: o5 u[存储类说明符]  结构别名 标识符[={初值表}[,标识符[={初值表}]…]];( H, ~4 R- |: P0 n' e
其中:存储类说明符有static、extern;结构原型名有结构体、*结构指针名。结构别名习惯上用大写字符。[结构原型名]可用可不用,习惯上不用。因为一般来说,别名更具特色。: ?; l" u' h: ^7 x; h( A/ M
说明:& U/ o4 @/ q4 q9 u9 o
结构由各种数据类型的成员组成。成员之间没有次序关系,访问成员不按次序,而用结构成员名。
8 `0 b+ b( ~* Z" O! V, |) t' ^4 i成员可以是各种简单变量类型个符合变量类型,也可以是数组;数组的元素也可以是结构,即结构和数组可以互为嵌套。
8 I( w" H8 [. O% U0 H7 L! `只有在定义性说明时,才可以整体性地位结构赋初值。在程序中,不能用语句整体性地址给结构赋值,但可以对程序员个别第进行赋值和去存操作。  }, b  d) F4 w; M( Z1 N
存取成员的方法有2种:结构名·成员名;结构指针名->成员名。前者是结构首地址加偏移法,后者是指针值加偏移法。只要结构指针指在结构的首地址上,二者便访问同义成员。) ^+ ]) B, [$ F
对结构只能进行2中运算:对结构成员的访问和取结构的地址(&结构名)

该用户从未签到

2#
发表于 2016-8-11 14:40 | 只看该作者
楼主辛苦了!
" B0 K; f6 p1 B& Y+ \

该用户从未签到

3#
发表于 2016-8-12 10:49 | 只看该作者
楼主辛苦了!" k6 I7 G9 D5 c+ O8 i8 s

该用户从未签到

4#
发表于 2016-8-12 11:33 | 只看该作者
好资料,果断收藏  D4 @+ i5 K% {) @5 G

该用户从未签到

5#
发表于 2016-8-12 14:16 | 只看该作者
路过捧场,谢谢分享!2 _) {5 S3 k2 l& [# N' n0 Y

该用户从未签到

6#
发表于 2016-8-16 09:31 | 只看该作者
感谢楼主分享!!!7 I+ q* ^+ A5 Z# _$ v$ y  x. \

该用户从未签到

7#
发表于 2016-8-19 14:37 | 只看该作者
学习中,谢谢分享- j  n0 U/ E  H

该用户从未签到

8#
发表于 2016-8-22 10:30 | 只看该作者
资源多,学习不止步,共同进步/ A7 b; @- f5 Y
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-2 04:12 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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