c语言-定义数据类型--结构体

13 篇文章 0 订阅
12 篇文章 0 订阅

修改默认对齐数

  • 用#pragma修改默认对齐数

在这里插入图片描述


百度笔试题

  • offsetof();
  • 计算相对于结构体成员相对偏移量

在这里插入图片描述


结构体传参

在这里插入图片描述

  • Print2好的原因
  • 函数传参时 参数是需要压栈的,会有时间和空间上的系统开销
  • 如果传递一个结构体对象的时候,结构体过大参数压栈的系统开销就比较大,所以会导致性能的下降
  • 结论:结构体传参 最好传址

位段

  • 位段的目的是为了节省空间
什么是位段??

位段的声明和结构是相似的,有两个不同:

  • 1.位段的成员必须是int, unsigned int ,signed int
  • 2.位段的成员后面有一个冒号和一个数字
位段的的内存分配
  • 1.位段的成员可以是 int ,unsigned int ,signed int 或者char类型
  • 2.位段的空间上是按照需要以4个字节(int)或者(char)的方式开辟的
  • 3.位段涉及很多不确定的因素,位段是不跨平台的,注重可移植的程序应该避免使用位段

在这里插入图片描述


枚举
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值