C结构与其他数据形式学习心得

来源:互联网 发布:淘宝详情页尺寸多少? 编辑:程序博客网 时间:2024/06/14 20:11

    结构是C高级数据结构建立的基础结构并不是一个新的数据类型,而是一个数据类型的集合,结构型数据被创建时,编译器会自动为每个成员分配适当大小的储存空间。与之相对的,还有联合和枚举类型,联合类型是多基本类型,成员唯一;枚举类型是唯一基本类型,多成员。

    结构的成员具有私有性,类比于代码块作用域,多个结构可以拥有相同名称的成员,与结构名称无关。

访问结构的成员有两种办法,一是使用成员运算符”.”,二是使用指针运算符(瞎说的)”->”,与名字相同,成员运算符只能用于结构名,而指针运算符只能用于指向结构的指针。形式均为”上级””运算符””下级”。这些访问的方式可以直接复制取出数据,访问之后便可以当做原本的数据类型使用,不再受到结构的限制。

    #definetypedef虽然在一些情况下有相同的结果,但他们有本质上的差别:用我自己的话来说,#define使用的是整体代换的思想,所以无法使用#define在同一语句中定义多个变量;而typedef是真正地定义了一个新的数据类型关键字,被typedef的关键字可以当做一个基本数据类型来使用。

    不过由于加入了typedef,一些恶趣味的程序员可能会弄出一些奇怪的关键字,这会使程序的可读性急剧降低。

0 0