C语言难点专题——enum, struct 和 Union

2019-07-13 23:43发布

C语言常用的几个数据结构, 做一个小总结, 方便查阅:

一: enum

        enum没有任何神奇的地方,仅仅是让某些整数值变得有意义, 比如说, 电源开,用0表示,电源关,用1表示, 那么我们可以定义一个变量open, 和close, 表示电源的开和关。                       在我看来,枚举值应该可以有多个值可选,比如typeA = sencond, third两个值,但似乎暂时没有看到有人这样用, 需要再斟酌一下这个问题。   从枚举值引用的关系可以看出,enum列举出的任何变量,都不允许重复定义:              

二: struct

 
  • 声明了一个abc的结构。
            struct abc{               int   score;             };      
  • 定义结构(需要带上struct):
              struct abc  a;//实质上是声明 + 初始化               初始化一个结构:                struct abc  a = {14};                 a = {10};       //wrong 注意不能被两次初始化  
  • 当const修饰时:
              const struct abc  a;             a.score = 10;     //不容许再次赋值    

三: union