zoukankan      html  css  js  c++  java
  • 编程入门之结构体

      在C语言程序设计中,数组可以将相同类型的元素封装进一个逻辑实体中,通过数组名和数组下标访问独立的数据。而结构体可以将不同类型的数据封装进一个逻辑实体中,通过成员访问运算符(.)访问结构体成员。

    一、结构体的定义:

      1、定义形式:struct  struct_lab{

              dataType  data1;

              dataType data2;

              ……

              dataType dataN;

            };

      2、定义元素:关键字struct必不可少;struct_lab如果结构体内部用不到,可以省略;{……}内部不能全部省略;最后的‘;必不可少

      3、定义结构体变量:struct struct_lab struct1;     //定义结构体变量struct1,必须使用struct struct_lab修饰struct1标识符

      4、另类定义,使用typedef关键字实现类型定义,形式:

            typedef  struct  struct_lab{

              dataType  data1;

              dataType data2;

              ……

              dataType dataN;

            } structType;

      5、定义元素:除了关键字struct,必不可少;struct_lab如果结构体内部用不到,可以省略;{……}内部不能全部省略;最后的';'必不可少之外,typedef关键字也是必不可少,strucType是结构体的类型定义;

      6、定义结构体变量:structType struct1;       //定义结构体变量struct1,将structType当成一种新的类型定义使用

      7、定义结构体指针变量:structType *ptrStruct1;   //定义结构体指针变量ptrStruct1,将structType当成一种新的类型定义使用
     
     
    二、结构体的成员访问:
      1、普通结构体变量的成员访问使用成员变量符访问成员即可,例如:struct1.data1 = 1;
      2、结构体指针变量的成员访问可以使用成员变量符访问成员,例如:(*ptrStruct1).data
      3、结构体指针变量的成员访问也可以使用指针成员变量符访问成员,例如:ptrStruct1->data,这种方法用的最多
     
    三、结构体的应用:
      1、结构体中的每个成员都有自己的内存空间,如果成员中使用了指针变量,一定要先行分配内存;
      2、在表达式中使用结构体;
      3、可以定义结构体变量;
      4、可以定义结构体数组;
      5、可以定义结构体指针;
      6、可以定义结构体指针数组;
      7、函数可以返回结构体类型数据;
      8、函数可以将结构体类型数据作为型参;
     
    四、结构体附加:
      1、结构体中可以包含基本类型的数据;
      2、结构体中可以包含指针类型的数据(普通变量指针、数组指针、结构体指针、联合体指针、枚举指针、指针的指针);
      3、结构体中可以包含符合类型的数据(数组,结构体、联合体、枚举等)
  • 相关阅读:
    jQuery下拉框操作系列$("option:selected",this) &&(锋利的jQuery)
    Jquery全选系列操作(锋利的jQuery)
    ASP.NET MVC 简单事务添加
    LINQ语法类似于SQL的语法
    C#(简单递归)和实现IComparable接口
    Jquery使用Id获取焦点和失去焦点
    解决使用C#打开第三方应用后进程关联问题
    使用 NSIS 制作安装包
    C# 窗口程序闪退
    C++ std::string 不可初始化为NULL
  • 原文地址:https://www.cnblogs.com/guochaoxxl/p/10823564.html
Copyright © 2011-2022 走看看