c++结构体学习笔记!

定义结构体类型:


后面有个分号,格外注意,与类的定义相似。
实例:在这里插入图片描述
注意:结构体声明一般放在程序文件开头。此时这个声明是全局的,若是放在某个函数内部,则这个声明是局部的。
在这里插入图片描述
PS:结构体类型和普通数据类型(int,double,char等)一样是类型名称,而不是该类型的一个实体,因此不会为它分配存储空间。
结构体可以嵌套使用,即结构体成员又可以是一个结构体类型的。

定义了结构体对象之后系统才会为这个对象分配存储空间。
类比理解一些,若是定义 int x 则只有x 的定义,它并没有获得任何存储空间。
只有当给x一个实际的值例如 x=2,系统才会为它分配存储空间
此处结构体类似。
定义结构体对象有两种形式:1.先声明结构体类型再定义对象。
在这里插入图片描述
2.声明结构体类型的同时定义对象。
在这里插入图片描述
而声明的对象得到的存储空间是在结构体内定义的数据类型所占用的内存空间之和
例如
在这里插入图片描述
这里的d1,d2分别得到了4*3个字节的存储空间。
而它分配存储空间的方式是按照定义结构体内的数据类型的先后顺序来分配的,例如上面这个例子,前四个字节的存储空间分配给year,第二个四个字节分配给month,第三个四个字节分配给day。

结构体对象的初始化。
可以在结构体对象定义时进行初始化。
在这里插入图片描述
注意:初始化的时候顺序必须相同!!

结构体对象成员的引用:
使用结构体对象一般是引用它的成员,一般形式为:
结构体对象名.成员名
成员引用运算符为“.”
在这里插入图片描述

而如果成员本身又是一个结构体对象,那么要用成员引用运算符就一级一级引用。例如
在这里插入图片描述
只能对结构体对象中的成员逐个进行输入或者输出。
在这里插入图片描述
能对结构体对象进行赋值运算,但是不能进行算数运算和关系运算等。
在这里插入图片描述
数组元素可以是结构体类型,称为结构体数组,也就是说,定义一个数组,数组里的每个数据类型都是结构体类型,如一位数组的定义形式为
在这里插入图片描述
相当于points里面的每一个元素都可以代表一个二维平面上的点。每一个元素都是结构体类型,里面拥有int型的x和y数据。

一维结构体数组的初始化形式为
在这里插入图片描述
例如:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值