admin 管理员组

文章数量: 1086019


2024年5月20日发(作者:登录界面设计 图片)

float f;

char s[20];

}y[4];

为了访问结构体aa中结构体变量y[2]的m[1][4]这个变量,可写成:

326y[2].m[1][4]

327【结构体与函数】

C语言中允许用结构体变量作为函数参数向所调用的函数传递整个结构体变量的内

容。需要注意的是:结构体类型的实参和形参必须具有相同的结构体类型;结构体变量的

形式与数组类似,含有多个成分,但是结构体与数组不同的是,结构体变量的名称并不表

示结构的地址,所以在使用结构体变量名称作为参数时,函数之间传递的是结构体变量的

内容,是值传递。

在程序设计时,有时希望函数返回一个结构体类型的值作为函数值。为达到此目的,

应将函数的返回值类型定义为结构体类型,这类函数可以称之为结构体类型函数。其一般

的定义形式如下:

struct 结构体名 函数名(参数表)

对于这一部分知识在此不再举例,读者可以参见其他的参考书。

【结构体与指针】

整型、字符型、数组和函数都有各自的指针,同样,结构体也有其自己的指针。结构

体变量的指针就是该变量所占据的内存段的起始地址。这样就可以像定义指向其他类型数

据的指针变量一样来定义指向结构体变量的指针变量。结构体指针变量的值就是该结构体

变量的起始地址。指针变量可以指向单个的结构体变量,当然也可以指向结构体数组中的

元素。定义结构体指针变量的一般形式是:

struct 结构体名 *结构体指针变量名

例如,在前面已经定义了结构体student,下面就可以定义结构体指针变量了:


本文标签: 结构 变量 函数 指针 类型