zoukankan      html  css  js  c++  java
  • 枚举,联合,结构体

    枚举
    也是程序员自己创建的一种数据类型
    枚举常量可以替代宏,可以代替常量,增加程序可读性

    //    重要用法是用于switch语句
    
    //enum Week{}
    //{}内不能有变量,只能是常量,而且枚举常量只能是整数不能是浮点数
    
    typedef enum{
        MONDAY = 3,
        TUESDAY ,
        WEDNESDAY,
        THURDAY,
        FRIDAY,
        SATURDAY,
        SUNDAY,
    }Week;
    //    MONDAY = 3   // 一种对应关系,不是赋值
    
    
    

    联合

    typedef union{
        char ch[4];
        int x;
    }Data;
    
    • 也是程序员自己创建的一种数据类型;可以节省内存空间,联合中的所有联合变量共用一块存储空间
      计算内存:

    大端存储(右到左)
    小端存储(左到右)

    结构体;

    struct Example{//成员个数不限
        int i;//成员变量
        char ch;
        double d;
    };
    
    struct Example s;//struct Example 是一个数据类型
     s.i = 10;//点是一个成员运算符
     s.ch = 'a';//结构体变量的成员,只能逐个操作,不能整体操作
     p->i = 30;//通过指针对成员变量赋值时需要使用" -> "这个成员运算符
    
    Exmple1 s2[3] = {
                {10,'a',3.14},//每个变量有成员,所以都用{}括起来
                {20,'b',2.678},
                {30,'c',9.56875}
            };
    

    结构体做函数形参:

    typedef struct{
        char name[100];
        BOOL gender;
        int age;
    }Person;
    
    void setPerson(Person* p,char* name , BOOL gender,int age){
        strcpy(p->name, name);
        p->gender = gender;
        p->age = age;
    
    #ifdef DEBUG1
        printf("调试:%s,%d,%d",p->name,p->gender,p->age);
        printf("
    ");
    #endif
    }
    
    成功的三大原则: 1、坚持 2、不要脸 3、坚持不要脸
  • 相关阅读:
    linux常用命令:
    解决css添加padding后元素变长的问题
    Hbase常用命令
    集群部署的三种方式(hadoop集群部署三种方式)
    linux编译安装指定依赖的软件包
    vue使用Element隐藏侧边栏进度条
    css相对于父容器,固定放在底部并撑满
    java中23种设计模式
    adb remount'的作用是什么?在什么情况下有用?
    java常用http请求库
  • 原文地址:https://www.cnblogs.com/xulinmei/p/7443690.html
Copyright © 2011-2022 走看看