共同体和枚举

来源:互联网 发布:淘宝图片防止右键保存 编辑:程序博客网 时间:2024/04/27 14:26

共同体

  1. #include <stdio.h>
  2. int main() {
  3.    union Person{
  4.        char *name;
  5.        int age;
  6.    }per;
  7.    per.name;
  8.    per.age;
  9.    return 0;
  10. }
联合体或共同体与结构体的区别:

       1.联合体只能够存一个元素.里面有多少元素的声明只是表示这块空间能存这些类型的元素,结构体可以同时存在多个

        2.联合体的字节总长的最大字节数元素的长度,结构体是最大元素的倍数.


枚举

枚举:

      是一种数据类型,称为枚举类型,是构造类型的一种,里面存的都是有别名的整型常量  

      可以把多个整型常量以别名的形式封装成一个整体,便于别的变量识别并取值使用

特点:

      1.枚举类型只能是int值,且不能直接用int常量,需要用别名(建议全部大写)

      2.如果不设定值,那么默认第一个元素是0,以此类推.

      3.同一个作用域内不能出现重复的元素.不同的枚举类型也不行.

注意:枚举一旦类型定义成功之后,里面的数据常量不能再更改.

  1. #include <stdio.h>
  2. int main() {
  3.    //定义:
  4.    enum Day{
  5.        MORNING,
  6.        NOON,
  7.        NIGHT,
  8.    };
  9.    //定义枚举变量并赋值
  10.    enum Day daystatus=MORNING;
  11.    printf("%d\n",daystatus);
  12.    //第二种赋值
  13.    daystatus=MORNING;
  14.    printf("%d\n",daystatus);
  15.    daystatus=NOON;
  16.    printf("%d\n",daystatus);
  17.    daystatus=NIGHT;
  18.    printf("%d\n",daystatus);
  19.    return 0;
  20. }




0 0