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

    结构体


    作用:用几个基本数据类型,组合成一个新的数据类型

    结构体是一种数据类型,是一种创建变量的模板,编译器不会为它分配内存空间,就像 int、float、char 这些关键字本身不占用内存一样;结构体变量才包含实实在在的数据,才需要内存来存储。


    • 定义新的数据类型(结构体):
    //常用定义方法
    struct stu {
       char *name;  //姓名
       int num;  //学号
       int age;  //年龄
    };
    /**定义一个结构体的意义:
    声明了一种新的数据类型,
    */
    
    • 定义新类型的变量:
    // struct stu stu1,stu2;
    struct stu stu1,stu2;
    

    定义新类型时:

    1. 定义结构体的同时定义结构体变量
    //定义结构体的同时定义结构体变量:
    struct stu{
        char *name;  //姓名
        int num;  //学号
        int age;  //年龄
    } stu1, stu2;
    
    1. //只需要 stu1,stu2 两个变量,后面不需要再使用结构体名定义其他变量
    //只需要 stu1、stu2 两个变量,后面不需要再使用结构体名定义其他变量
    struct{  //没有写 stu
        char *name;  //姓名
        int num;  //学号
        int age;  //年龄
    } stu1, stu2;
    
    1. 定义时整体赋值
    struct{
        char *name;  //姓名
        int num;  //学号
        int age;  //年龄
    } stu1, stu2 = { "Tom", 12, 18, 'A', 136.5 };
    //结构体数组在定义的同时也可以初始化,例如:
    struct stu{
        char *name;  //姓名
        int num;  //学号
        int age;  //年龄
        char group;  //所在小组 
        float score;  //成绩
    }class[5] = {//当对数组中全部元素赋值时,也可不给出数组长度:      class[] = {
        {"Li ping", 5, 18, 'C', 145.0},
        {"Zhang ping", 4, 19, 'A', 130.5},
        {"He fang", 1, 18, 'A', 148.5},
        {"Cheng ling", 2, 17, 'F', 139.0},
        {"Wang ming", 3, 17, 'B', 144.5}
    }
    

    结构体指针

    struct stu *pstu = &stu1;
    

    获取结构体成员

    通过结构体指针可以获取结构体成员,一般形式为:

    (*pointer).memberName
    

    或者:

    pointer->memberName
    
  • 相关阅读:
    How to Use the UTL_MAIL Package
    ORA-32001: 已请求写入 SPFILE, 但是在启动时未指定 SPFILE
    2.4 批量下达车间任务平台
    2.3 改装及返修任务管理
    2.2 生产外协管理
    2.1 车间排产与生产备料
    1.15 计划分析-订单与预测差异比较
    1.14 计划分析-两周订单变更比较
    1.13 生产计划的调整与维护
    1.12 售后配件需求与计划生产衔接
  • 原文地址:https://www.cnblogs.com/alien-x/p/14176459.html
Copyright © 2011-2022 走看看