zoukankan      html  css  js  c++  java
  • OC 结构体

    void test() {
        // 这个机构只能在函数内部使用
        // 定义一个名为Student的结构体类型
        struct Student {
            int age; // 年龄
            char *name; // 姓名
            float height; // 身高
        };
        
        // 定义一个结构体变量
        struct Student stu = {27, "mj", 1.8f};
        // 下面这行的初始化是错误的
        // stu = {27, "mj", 18.0f};
        
        stu.age = 28;
        
        printf("age=%d
    ", stu.age);
        printf("name=%s
    ", stu.name);
        printf("height=%.1f
    ", stu.height);
    }
    
    void test1() {
        struct Student {
            int age; // 年龄
            char *name; // 姓名
            float height; // 身高
        } stu = {27, "mj", 1.8f};
        
        struct Student stu1 = {28, "lmj", 1.9f};
        
        
        struct {
            int age; // 年龄
            char *name; // 姓名
            float height; // 身高
        } stu2 = {27, "mj", 1.8f};
        
        struct {
            int age; // 年龄
            char *name; // 姓名
            float height; // 身高
        } stu3 = {27, "mj", 1.8f};
    }
    
    void test2() {
        // 定义一个Date结构体
        struct Date {
            int year;
            int month;
            int day;
        };
        
        // 定义一个学生结构体
        struct Student {
            int age;
            struct Date birthday;
        };
        
        struct Student stu = {27, {2009, 10, 10}};
        
        printf("age=%d
    ", stu.age);
        printf("year=%d
    ", stu.birthday.year);
        printf("month=%d
    ", stu.birthday.month);
        printf("day=%d
    ", stu.birthday.day);
    }
    
    void test3() {
    //    struct Student {
    //        int age; // 年龄
    //        char *name; // 姓名
    //        float height; // 身高
    //    };
    //    struct Student a[2] = {{27, "mj", 1.8f}, {28, "lmj", 1.9f}};
        
        struct Student {
            int age; // 年龄
            char *name; // 姓名
            float height; // 身高
        } a[2] = {{27, "mj", 1.8f}, {28, "lmj", 1.9f}};
        
        struct Student a2[4];
    }
    
    struct Person {
        int age;
    };
    
    void change(struct Person p) {
        p.age = 9;
    }
    // 结构体作为函数参数
    void test4() {
        struct Person person = {27};
        change(person);
        
        printf("age=%d", person.age);
    }
    
    // 指向结构体的指针
    void tets5() {
        // 定义一个结构体变量
        struct Person person = {27};
        // 定义一个指向结构体的指针
        struct Person *p;
        // 让指针p指向结构体person
        p = &person;
        
        printf("age=%d
    ", person.age);
        printf("age=%d
    ", (*p).age);
        printf("age=%d
    ", p->age);
    }
    
    int main(int argc, const char * argv[])
    {
        tets5();
        return 0;
    }
  • 相关阅读:
    js 秒的倒计时,将秒转换为时分秒显示
    mysql 中 int 等类型如何选择
    js 经常用于条件判断 大于等于0 的正整数
    egg.js 相关
    nodejs 开发时,学用的热更新工具 nodemon
    pm2 工具来管理 node 服务端
    centos 宝塔面版 运行 thinkjs
    图解ByteBuffer
    gc HeapTaskDaemon守护线程
    Android Bitmap变迁与原理解析(4.x-8.x)
  • 原文地址:https://www.cnblogs.com/liuwj/p/6899611.html
Copyright © 2011-2022 走看看