C语言构造类型(结构体)下

一概述:

            一个知识很难一次性消化完,有些知识,我会分开几篇来总结。

    

二.结构体数组:

        前面我们已经复习过结构体类型,结构体变量。现在来复习结构体数组.

2.1定义:

方式1:(喜好这种)

struct Student{
char *name;
int age;
};
struct Student stu[2];

方式2:

struct Student{
char *name;
int age;
}stu[2];

方式3:

struct{
char *name;
int age;
}stu[2];

定义类型,跟之前的差不多;

定义来一个变量名为stu的结构体数组,数组元数个数是2;


2.2初始化:

struct Student{
char *name;
int age;
};

int main(){

struct Student stu[2] ={{"xb",18},{"xb",18}};

return 0;
}

使用事例:




三.结构体作为函数参数.

    注意:将结构体变量作为函数参数进行传递时,其实传递的是全部成员的值,也就是将实参中成员的值一一赋值给对应的形参成员。

                

两者是独立的,修改其中一个,不会影响到另一个。(再次强调





四.指向结构体的指针

1.每个结构体变量都有自己的存储空间和地址,所以指针也可以指向存储结构体变量的地址.

2.结构体指针变量的定义形式:struct 结构体名称 *指针变量.

所有就有3中访问结构体成员的方式:

1.结构体变量名 . 成员名

2.(*指针变量名). 成员名.

3.指针变量名 -> 成员名



前面说了,如果把stu值给stu2,并且修改了stu2的成员,是不影响到stu的,不过用上指向结构体的指针,就会影响到了,因为指针结构体指向stu地址.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值