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、结构体中可以包含符合类型的数据(数组,结构体、联合体、枚举等)
  • 相关阅读:
    string数组批量转换成Int数组
    TCP/IP 、 HTTP 、HTTPS
    静态布局、自适应布局、流式布局、响应式布局、弹性布局等的概念和区别
    Vue源码学习02 初始化模块init.js
    IOS8白屏
    VUE 源码学习01 源码入口
    http状态码
    vue全家桶(Vue+Vue-router+Vuex+axios)(Vue+webpack项目实战系列之二)
    Vue实战Vue-cli项目构建(Vue+webpack系列之一)
    module.exports,exports,export和export default,import与require区别与联系【原创】
  • 原文地址:https://www.cnblogs.com/guochaoxxl/p/10823564.html
Copyright © 2011-2022 走看看