zoukankan      html  css  js  c++  java
  • 建立自己的数据类型——C结构体归纳

    一、建立结构体类型

    1、申明结构体类型

    struct 结构体名
    {
        成员表列(类型名 成员名;);
    };
    
    例如:
    struct Person
    {
        char name;
        int age;
       char sex;
    };
    //定义了一个结构体类型——struct Person

    struct为关键字,不可省略 
    结构体类型如同其他类型一样,在c程序中具有和其他类型相同的地位,就如同 int(整数类型) char(字符类型)一样

    Zu:结构体名可以自由命名,成员表列也可以由现实情况自由定义。书写格式固定,内容自定义。

    2、定义结构体类型变量

    前言:
    1)程序运行的时候只会对变量进行操作,而不会对类型进行操作,(比如,你什么时候对int  double  进行过运算,赋值呢,对吧)所以我们要先定义变量,然后才能对其进行操作。

    2)编译的时候对类型是不分配空间的,只会对变量分配存储空间。

    3)结构体中的成员可以单独使用,作用与地位相当于普通变量。

    4)要遵循:先定义结构体类型,后定义结构体变量。

    三种方法定义结构体变量:

    1)结构体类型名  变量名;

      (类似于:类型名  变量名;)

    struct    Student
    {
       char name;
       int age;   
    };//定义结构体类型
    
    struct Student  student1,student2;//定义了 student1,student2两个结构体变量
    
    struct Student  students[5];//定义了一个结构体数组,长度为5

    结构体类型也可以定义数组。

    2)申明结构体类型的同时定义变量

    struct    Student
    {
       char name;
       int age;   
    }studen1,student2;//在定义struct    Studentt这个结构体类型的同时定义了studen1,student2两个struct    Student结构体变量
    
    struct 结构体名
    {
      变量表列;  
    }变量名表列;

    //结构体数组也可这样定义
    struct    Student
    {
       char name;
       int age;  
    }studens[5];
    //定义了一个结构体数组,长度为5

    (struct 结构体名) 合起来称作一个结构体类型。

    3)不定义类型名而直接定义结构体类型变量

    无名结构体无法再次定义此类结构体变量。

    strcut
    {
        char name;
        int age;
    }student1,student2;

    //意义与上面的相同

    Zu:该方式的定义方法意义不大,使用很少。

    3、结构体变量的初始化和使用

    这部分比较简单,不做介绍,任何一本c语言教科书都会进行讲解。

    4、结构体指针也不做讲解。

  • 相关阅读:
    Step by Step To Create a K8S Cluster
    Linux简单操作指令
    安装redis 最新版 redis-6.2.6
    GCC升级到11.2.0
    SQL开窗函数
    SQL 树形结构递归查询
    一文详解python的类方法,普通方法和静态方法
    _new_()与_init_()的区别
    关于Python的import机制原理
    【原创】android内存管理-hprof文件
  • 原文地址:https://www.cnblogs.com/gti2baby/p/11332565.html
Copyright © 2011-2022 走看看