C语言学习-结构体(struct)数据类型

------------本节内容开始------------

  • 结构体数据类型概念:

  结构体是一种数据类型,属于一种构造类型,它是由若干个成员组成,每个成员可以是基本的数据类型,

也可以是构造类型。由于结构体类型是一种“构造”而成的数据类型,在使用之前必须先声明它,即先构造出这种结构类型。

  • 结构体数据类型关键字:

       关键字:struct

  • 结构体数据类型的声明:

  struct  结构体名称
  {
    成员列表(list);
  }

        结构体成员的声明形式:

  数据类型 成员名称;

  结构体名是由用户自定义的一个合法的标识符,用于唯一标识该结构体数据类型,也称为“结构体标记”。

其中,数据类型可以是一个基本数据类型,也可以是一个构造数据类型;成员名称和普通变量命名规则相同。

成员列表也称为“域表”,每一个结构体成员称为一个“域”,结构体类型的成员名可以与程序中其他变量的名称

相同。结构体数据类型的生命周期,如果在函数外面声明,则从声明的位置开始到程序结束全局有效,如果是

在函数内部声明,则只在本函数内部有效。

  • 结构体数据类型变量的定义:

        声明了结构体数据类型之后,就可以定义结构体数据类型的变量,定义结构体类型变量的三种方式:
  1.先声明结构体数据类型,再定义结构体数据类型变量,如下:
  结构体数据类型声明:
  struct  结构体名称
  {
    成员列表(list);
  };
  结构体数据类型变量声明:
    struct  结构体名称  该结构体变量列表;
  2.在声明结构体数据类型的同时,定义结构体数据类型变量,如下:
  struct  结构体名称
  {
    成员列表(list);
  }该结构体类型变量列表;
  3.直接定义结构体数据类型变量,如下:
  struct 
  {
    成员列表(list);
  }该结构体类型变量列表;
这中形式的结构体类型,只能够定义一次变量,不能在其他地方再次使用它来定义结构体变量了。定义了结构体
变量之后,系统会为结构体变量分配内存,结构体变量所占用的内存空间是各个成员所占的存储空间的总和。
 
注意:
    【1】:结构体数据类型结构体数据类型变量是两个不同的概念,在编译时,系统只会为变量分配存储空间,而不 会为类型分配存储空间。
    【2】:结构体类型中的成员可以单独使用,它们的作用和地位和同类型的普通变量一样。
    【3】:在结构体数据类型中,结构体数据类型的成员的数据类型也可以是结构体数据类型( 划重点 )。
 
  结构体数据类型变量的引用:
  
    【1】:对结构体变量成员的引用。
   一般情况下,不能将结构体类型变量作为一个整体引用,而只能对结构体类型变量的成员进行单独引用。
    【2】:结构体类型变量引用成员的方式。
     1.使用成员运算符访问:
     2.使用
 

------------本节内容结束------------

------------本节内容开始------------

  • 结构体数据类型概念:

  结构体是一种数据类型,属于一种构造类型,它是由若干个成员组成,每个成员可以是基本的数据类型,

也可以是构造类型。由于结构体类型是一种“构造”而成的数据类型,在使用之前必须先声明它,即先构造出这种结构类型。

  • 结构体数据类型关键字:

       关键字:struct

  • 结构体数据类型的声明:

  struct  结构体名称
  {
    成员列表(list);
  }

        结构体成员的声明形式:

  数据类型 成员名称;

  结构体名是由用户自定义的一个合法的标识符,用于唯一标识该结构体数据类型,也称为“结构体标记”。

其中,数据类型可以是一个基本数据类型,也可以是一个构造数据类型;成员名称和普通变量命名规则相同。

成员列表也称为“域表”,每一个结构体成员称为一个“域”,结构体类型的成员名可以与程序中其他变量的名称

相同。结构体数据类型的生命周期,如果在函数外面声明,则从声明的位置开始到程序结束全局有效,如果是

在函数内部声明,则只在本函数内部有效。

  • 结构体数据类型变量的定义:

        声明了结构体数据类型之后,就可以定义结构体数据类型的变量,定义结构体类型变量的三种方式:

猜你喜欢

转载自www.cnblogs.com/bosswjl/p/12354303.html