联合体不同时在同一存储空间中存储不同的数据类型

以下是带有标记的联合体模板的示例:

union myU { 
      int digit; 
      double bigfl; 
      char letter; 
};

以下是定义myU类型的三个union变量的示例:

union myU fit;      // union variable of myU type 
union myU save[10]; // array of 10 union variables 
union myU * pu;     // pointer to a variable of myU type

可以初始化联合。有三个选择:

  • 可以将联合初始化为另一个相同类型的联合,
  • 可以初始化union的第一个元素,或者使用C99,
  • 可以使用指定的初始化程序:
union myU valA; 
valA.letter = /'R/'; 
union myU valB = valA;  // initialize one union to another 
union myU valC = {88};  // initialize digit member of union 
union myU valD = {.bigfl = 118.2};  // designated initializer

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/266734.html

(0)
上一篇 2022年6月7日
下一篇 2022年6月7日

相关推荐

发表回复

登录后才能评论