首页 理论教育单片机:结构体的应用

单片机:结构体的应用

【摘要】:struct date表示这是一个结构体类型,其中struct是关键词,不能省略;date为结构体数据类型名,不是变量名。date结构体类型包括了4个结构成员:unsigned int year,unsigned char month,unsigned char day,char week。这4个结构成员的数据类型可以相同,也可以不同,其中一个是无符号整型,两个是无符号字符型,另一个是字符型。

结构体就是把若干个不同数据类型组合在一起,构成一个组合形式的数据类型,称之为结构体数据类型,也称为结构类型,简称结构体或结构。这些不同数据类型可以是基本类型,也可以是枚举类型、指针类型、数组类型甚至是其他(非本身)结构类型。构成一个结构体类型的各个数据类型称为结构元素(或成员),结构体数据类型的命名规则与变量的命名规则相同。

定义结构体数据类型的语法如下:

注意:在同一个结构体类型中,成员名不允许重名;成员名的数据类型可以相同,也可以不同;花括号“}”后面以分号“;”结尾。

定义一个名为date的结构体类型示例如下:

说明:我们用struct关键词定义了一个结构体数据类型。struct date表示这是一个结构体类型,其中struct是关键词,不能省略;date为结构体数据类型名,不是变量名。

date结构体类型包括了4个结构成员:unsigned int year,unsigned char month,unsigned char day,char week。这4个结构成员的数据类型可以相同,也可以不同,其中一个是无符号整型(unsigned int),两个是无符号字符型(unsigned char),另一个是字符型(char)。

date是程序员自己定义的数据类型,与基本数据类型(如int,char,float等)一样可以用来定义变量的类型。(www.chuimin.cn)

定义一个结构体类型的变量有以下3种方法:

方法一:先定义结构体类型,再定义该结构体类型的变量。例如:

说明:在上面定义了结构体类型date之后,使用“struct date nowday”指令来定义nowday为data类型的结构体变量。date是我们构造的新数据类型(结构体),nowday是变量名词,其中类型是date结构体类型。

方法二:同时定义结构体类型和该结构体类型的变量。语法如下:

方法三:直接定义结构体类型变量。语法如下: