今天我将带大家了解一下结构体类型struct,在后面还会陆续给大家带来enum,union。话不多说,我们开始学习struct。
这是结构体的基本形式 ,最后的分号是一定不能丢的。其实结构体一点也不复杂,你完全可以把它理解成自己定义的一个类型,不是编译器给你直接用,就是这个区别。了解它的基本形式,我们探讨一下他有什么作用
1:s1与s2都可以得到我们想要的数据,区别是,s1是全局变量,s2是局部变量。
2:结构体可以很轻松的就得到我们想要的数据,不用再一个一个定义。
接下来我们像学习整形的时候一样,看看结构体怎么占用内存空间的
我们发现,同样的数据, 只是换了一个位置,所占的内存空间就不相同了,为什么?
char 所占字节是1,int 是4,我用表格方便大家理解,char的起始位置是0,占一个字节,标记红色,int 开始的地方必须是int 的最小整数倍,所以4标记红色,占四个字节,0-8是9个数,但是所占内存不是9,因为最终所占的字节必须是最大类型的整数倍,为12。
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
今天就先介绍到这里,关于字符串函数也会赶紧更新第二期。