| 查看: 466 | 回复: 2 | ||
[求助]
C++关于结构体的小程序,输出迷惑 已有2人参与
|
|
最近看到位域的东西。。。。对于最后这个sizeof的值(8),不理解,想不明白是怎么存放的。。。。。 还有一个问题,看到网上好多都说“结构体不允许有显示的无参构造函数”,,,可是,我在电脑上试了,明明可以啊,,凌乱了,,,望大神指教。。。。 #include<iostream> using namespace std; struct reg{ unsigned int SN:4; unsigned int m:4; bool good:4; }; void main() { reg r={14,3,true}; cout<<r.SN<<endl; cout<<r.m<<endl; cout<<r.good<<endl; cout<<sizeof(reg)<<endl; } |
» 猜你喜欢
一志愿211,335分,0856,求调剂院校和导师
已经有16人回复
081200-11408-276学硕求调剂
已经有4人回复
材料与化工306分找调剂
已经有17人回复
一志愿0817化学工程与技术,求调剂
已经有7人回复
一志愿深大085601材料工程专业(专硕)300分可以调剂去哪
已经有7人回复
309求调剂
已经有11人回复
求调剂
已经有12人回复
材料科学与工程考研
已经有6人回复
一志愿陕西师范大学生物学317分
已经有4人回复
环境285分,过六级,求调剂
已经有7人回复
» 本主题相关价值贴推荐,对您同样有帮助:
疑惑:一道C++的小程序,不理解
已经有9人回复
这个c++小程序编译的错误很奇怪~~
已经有5人回复
rbs
木虫 (小有名气)
- 应助: 32 (小学生)
- 金币: 3589.1
- 红花: 3
- 帖子: 221
- 在线: 16.3小时
- 虫号: 695603
- 注册: 2009-02-03
- 性别: GG
- 专业: 计算机应用技术
【答案】应助回帖
★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
我爱小虫子: 金币+6, ★★★很有帮助, 感谢 2014-04-26 11:15:41
感谢参与,应助指数 +1
我爱小虫子: 金币+6, ★★★很有帮助, 感谢 2014-04-26 11:15:41
|
你使用的是VS编译器,或者是64位机器吧? 就这个位域结构体而言,绝不会只分配12位,因为不能对齐。 在gcc中,这个结构体的sizeof是4。你在结构体里再加一点成员,只要不超过32位,就一直会是4。而超过32位,size就会变成8。 我不清楚“结构体不允许有显示的无参构造函数”这句话从哪来的,适用于什么范围。 但是,在C++中,struct和class只有一个区别,除此之外没有任何区别。 该区别就是:struct默认为public,而class默认为private。无论是对成员属性还是继承属性都这样。 |
2楼2014-04-25 10:13:24

3楼2014-04-25 11:04:18














回复此楼