EDA365电子工程师网

标题: 结构说明 [打印本页]

作者: ygcgsa    时间: 2016-7-13 15:07
标题: 结构说明
结构说明有原型法和类型别名法2种定义方法。
1)原型法
(1)声明结构类型的同时定义变量名
格式如下:
[存储类说明符]  struct  [结构原型名]
                     {类型说明标识符[,标识符...];

类型说明标识符[,标识符...];
                                          .
                                          .
                                          .
                     }标识符[={初值表}[,标识符[={初值表}]...]];
其中:存储类说明符有static、extern;结构原型名有结构名、*结构指针名。
(2)先声明结构类型再定义变量名
格式如下:
struct 结构原型名
       {类型说明标识符[,标识符...];
              ...
      
       }
       [存储类说明符]    struct 结构原型名
标识符[={初值表}[,标识符[={初值表}]...];
其中:存储类说明符有static、extern;结构原型有结构名、*结构指针名。
类型别名法
先为结构原型名起别名,再用别名做定义说明。其格式如下:
typedef    struct[结构原型名]
                            {类型说明符 标识符[,标识符...];

类型说明符 标识符[,标识符...];
                             ...
                            }结构别名
[存储类说明符]  结构别名 标识符[={初值表}[,标识符[={初值表}]…]];
其中:存储类说明符有static、extern;结构原型名有结构体、*结构指针名。结构别名习惯上用大写字符。[结构原型名]可用可不用,习惯上不用。因为一般来说,别名更具特色。
说明:
结构由各种数据类型的成员组成。成员之间没有次序关系,访问成员不按次序,而用结构成员名。
成员可以是各种简单变量类型个符合变量类型,也可以是数组;数组的元素也可以是结构,即结构和数组可以互为嵌套。
只有在定义性说明时,才可以整体性地位结构赋初值。在程序中,不能用语句整体性地址给结构赋值,但可以对程序员个别第进行赋值和去存操作。
存取成员的方法有2种:结构名·成员名;结构指针名->成员名。前者是结构首地址加偏移法,后者是指针值加偏移法。只要结构指针指在结构的首地址上,二者便访问同义成员。
对结构只能进行2中运算:对结构成员的访问和取结构的地址(&结构名)
作者: Titianyeer    时间: 2016-7-14 14:17
支持楼主!谢谢分享!

作者: 10929390    时间: 2016-7-14 14:48
感谢楼主分享!!!





欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2