深入理解结构体中占位符的用法
- 更新时间:2022-06-29 09:20:13
- 编辑:麴博延
参考资料
- 数据结构(C++语言版) / 24 MB / 码小辫 推荐度:
- Visual C++权威剖析:MFC的原理、机制与开发实例 PDF 电子书 / 45.14MB / 辛长安,王颜国 推荐度:
- C++面向对象程序设计 课后答案 / 23.4 MB / 李涛 游洪跃 陈良银 李琳 推荐度:
正文内容
结构体 占位符
typedef union { struct x{ char a1 : 2; char b1 : 3; char c1 : 3; }x1; char c; }my_un; int main() { my_un a; a.c = 100; printf("%d/n",a.x1.c1); printf("%d/n",sizeof(my_un)); return 0; }
输出结果:
3
1
即第一个是3, 而联合体的大小为 1
分析:
sizeof为1表示1个字节,结构体中占位符冒号表示占的位数,实际上还是3+3+2=8位就是1个字节
100--->01100100
共用体中结构体的数据也为100.
a1占低2位(00);
b1占低3到5位(001);
c1占高3位(011);
因此a.x1.c1打印值为3.
sizeof(my_un);
共用体所占的字节大小取决于最大成员.它们都为1(结构体所占比特位为2+3+3=8位,char型为1字节).
所以为1.
c++相关教程
-
C语言实现C++继承和多态的实例内容
本文主要给大家简单讲诉了C和C++的区别以及如何使用C语言模拟实现C++继承和多态,并附上示例代码,是篇相当不错的文章,推荐给喜欢C语言的小伙伴们
发布时间:2021-06-10
-
你真的知道C++对象大小吗?
这篇文章主要给大家介绍了关于C++对象大小的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
发布时间:2022-04-20
-
C++类与对象的详细说明
这篇文章主要为大家详细介绍了C++的类与对象,使用数据库,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
发布时间:2022-04-16
-
C++实现会员管理程序的具体方案
这篇文章主要为大家详细介绍了C++实现会员管理程序,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
发布时间:2021-06-01
-
C++类的成员初始化列表的相关问题总结
下面小编就为大家带来一篇关于C++类的成员初始化列表的相关问题。小编觉得挺
发布时间:2021-05-17
-
c++读取数据文件到数组的实例
今天小编就为大家分享一篇c++读取数据文件到数组的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
发布时间:2021-05-11
-
C++中的类与对象深度解析
给网友们整理关于C++的教程,这篇文章主要为大家详细介绍了C++中的类与对象,使用数据库,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
发布时间:2022-08-17
-
解析c++中参数对象与局部对象的析构顺序的详解
本篇文章是对c++中参数对象与局部对象的析构顺序进行了详细的分析介绍,需要的朋友参考下
发布时间:2022-04-15