c语言学习——自定义类型

自定义类型包括:结构体、枚举、联合

我会在下面进行介绍和知识总结:

1.结构体的自引用不能提前使用

2.结构体内存大小的计算中的对齐规则,vs的默认对齐数是8

        对齐规则:

 

3.结构体传参的时候,要传结构体的地址。

4.位段的成员必须是 int、unsigned int 或signed int 。

5.位段不可跨平台,它存在很多不确定因素

6.枚举的对应数可以改变

7.联合体与结构体不一样,它是所有成员公用同一块空间,这样一个联合变量的大小,至少是最大成员的大小

8.联合体的成员不能同时使用

1.1结构体的声明

 

 

1.2结构体的自引用

 

使用Node必须是在它的创建之后

1.3结构体的内存对齐

例:

 

 

1.4修改默认对齐数

 

1.5结构体传参

与其他变量传参一样,结构体传参可以分为两种一种是传地址,一种是传值

我们通常选择传地址,因为一旦遇到内存较大的结构体传参,我们需要开辟一段大小相同的内存空间

2.1什么是位段

 

2.2位段内存分配

 

3.1枚举

在我的理解种枚举就是一种答案确定的,可以一个一个声明的

例如:

人的性别 : 男 女

抛硬币猜正反面: 正面 反面

 


版权声明:本文为qq_63512251原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。