编程C语言进阶篇——自定义数据类型:结构体

一、结构体

定义方法:

结构名 变量名

特点:

两个同类型的结构变量可以相互赋值,但是结构变量之间不能使用“<”,“==”等运算符,如果使用则需要对运算符重载

内存分配情况:地址对齐

结构的成员变量可以是任何类型的,包括基本类型、结构体、结构体指针等

成员访问方式:

通过结构变量名:结构变量名.成员变量名

通过结构体指针:指针->成员变量名 或 (*指针).成员变量

注: 点运算符的前体是变量名,箭头的是指针(助记:指针很像箭头)

初始化:

定义时按照成员变量的顺序和格式列举初始化

用另外一个同类型的结构体初始化

结构数组

结构名 数组名[数组元素个数]

指针和动态内存分配:

指针的用法同一般情况

动态内存分配:

StructName *p;p =newStructName[N];

结构变量作为函数参数:

值传递,需要将实参复制到形参,结构体积大的时候效率很低

地址传递,传递指针

引用传递(c++特有)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容