野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: 山外メ雲ジ

【每日一题讲解】位域的占用空间问题

  [复制链接]
发表于 2015-10-24 22:38:54 | 显示全部楼层
C
f1,f2,f3各占1个字节
回复 支持 反对

使用道具 举报

发表于 2015-10-24 22:40:08 | 显示全部楼层

没想到竟然可以压缩
回复 支持 反对

使用道具 举报

发表于 2015-10-25 21:25:04 | 显示全部楼层
来学习学习
回复 支持 反对

使用道具 举报

发表于 2015-10-25 21:26:09 | 显示全部楼层
位域还真的没学过
回复 支持 反对

使用道具 举报

发表于 2015-10-27 13:17:31 | 显示全部楼层
d............
回复

使用道具 举报

发表于 2015-10-30 20:35:23 | 显示全部楼层
感谢已明白
回复 支持 反对

使用道具 举报

发表于 2015-11-1 11:01:25 | 显示全部楼层
长度最起码是4吧
回复 支持 反对

使用道具 举报

发表于 2015-11-1 11:02:32 | 显示全部楼层
不知道位域,果断错了
回复 支持 反对

使用道具 举报

发表于 2015-11-1 11:05:10 | 显示全部楼层
两个字节,虽然总数是12位,但是根据内存补齐原则,还是16位。
回复 支持 反对

使用道具 举报

发表于 2015-11-1 11:14:36 | 显示全部楼层
struct test
{
char f1 : 3;
short f2 : 4;
char f3 : 5;
};
求 sizeof(test)大小

A.1
B.2
C.3
D.4
回复 支持 反对

使用道具 举报

发表于 2015-11-2 20:40:26 | 显示全部楼层

我觉得是C
回复

使用道具 举报

发表于 2015-11-5 16:23:16 | 显示全部楼层
不懂 学习学习   
回复 支持 反对

使用道具 举报

发表于 2015-11-5 21:53:49 来自手机 | 显示全部楼层
结构体学习下
回复 支持 反对

使用道具 举报

发表于 2015-11-6 08:06:33 | 显示全部楼层
哈哈,这个我知道,字节对齐,是四个,所以最好这样定义
struct test
{
char f1 : 3;
short f2 : 4;

};
回复 支持 反对

使用道具 举报

发表于 2015-11-6 08:26:49 来自手机 | 显示全部楼层
2                  
回复 支持 反对

使用道具 举报

发表于 2015-11-6 09:47:44 来自手机 | 显示全部楼层
好像感觉是D吧,不太会
回复 支持 反对

使用道具 举报

发表于 2015-11-6 15:23:37 | 显示全部楼层
2、、、、、、、、、、、、、、、、、、
回复 支持 反对

使用道具 举报

发表于 2015-11-6 22:54:49 | 显示全部楼层
2               
回复 支持 反对

使用道具 举报

发表于 2015-11-7 11:42:24 | 显示全部楼层
学习一下哦
回复 支持 反对

使用道具 举报

发表于 2015-11-8 11:34:28 | 显示全部楼层
sizeof(char)+sizeof(short)+sizeof(char) = 1+4+1 = 6 ?
回复 支持 反对

使用道具 举报

发表于 2015-11-8 12:14:05 | 显示全部楼层
看到这个问题的时候随便回答了一下,出现两个常识性的错误
1.没有明确,sizeof(short)的值是多少,经过查阅得:sizeof(char)=1;sizeof(short)=2;sizeof(int)=4;sizeof(double)=8;
2.完全没有清楚位域的概念,其实现在还是不是太清楚,不过我知道下面的这两种关于计算内存大小的
   2.1如果struct text1{char a;short b;int c;}     那么sizeof(text1)=4+4=8;(4个字节对齐,前两个在第一个四字节里)
   2.2如果struct text2{char a;int c;short b;}     那么sizeof(text2)=4+4+4=12;(4个字节对齐,char和short两个分开了)
   2.3如果struct text3{char a:1;int c:6;intd;}    那么sizeof(text3)=4+4=8;(4个字节对齐,前两个和在一起了)
   2.4如果struct text4{char a:1;int c:2;double d:2;int e;}   那么sizeof(text4)=4+4 还是 8+8 还是8+8+8 呢?
回复 支持 反对

使用道具 举报

发表于 2015-11-8 21:14:20 | 显示全部楼层
3。。。。。。。。?
回复

使用道具 举报

发表于 2015-11-8 23:15:31 来自手机 | 显示全部楼层
每天坚持学习,真棒,!!!!
回复 支持 反对

使用道具 举报

发表于 2015-11-9 10:35:51 | 显示全部楼层
按5对齐?15 2字节B 还是按8对齐?
回复 支持 反对

使用道具 举报

发表于 2015-11-9 10:37:21 | 显示全部楼层
菜狗 发表于 2015-11-9 10:35
按5对齐?15 2字节B 还是按8对齐?

想错了,位域是这样的啊,学习了
回复 支持 反对

使用道具 举报

发表于 2015-11-9 20:36:15 | 显示全部楼层
B!!!!!!!!!!!!!!!!!!
回复

使用道具 举报

发表于 2015-11-10 09:03:35 来自手机 | 显示全部楼层
B,。。。。。。。
回复

使用道具 举报

发表于 2015-11-10 13:36:22 | 显示全部楼层
选择D选项!!!
回复

使用道具 举报

发表于 2015-11-11 11:09:43 | 显示全部楼层
22222222222222222
回复 支持 反对

使用道具 举报

发表于 2015-11-15 09:33:47 | 显示全部楼层
表示不懂那个冒号是干什么用的,自己跑了一下答案是2
回复 支持 反对

使用道具 举报

发表于 2015-11-19 22:05:52 | 显示全部楼层
真棒!!非常感谢
回复 支持 反对

使用道具 举报

发表于 2015-11-23 12:45:39 | 显示全部楼层
这个不怎么用啊
回复 支持 反对

使用道具 举报

发表于 2015-11-23 15:13:38 | 显示全部楼层
位域没搞清楚,选2??
回复 支持 反对

使用道具 举报

发表于 2015-11-23 19:32:43 | 显示全部楼层
8吗?    1+3+4
回复 支持 反对

使用道具 举报

发表于 2015-11-23 19:38:22 | 显示全部楼层
为什么呢?   和
struct    test
{
     char  f1;
     short  f2;
     int  f3;
};
有什么区别呢?
回复 支持 反对

使用道具 举报

发表于 2015-11-27 08:45:58 | 显示全部楼层
444444444444444444444
回复 支持 反对

使用道具 举报

发表于 2015-11-27 19:51:39 | 显示全部楼层
.........
回复

使用道具 举报

发表于 2015-11-27 20:36:29 | 显示全部楼层
答案应该是D吧
回复 支持 反对

使用道具 举报

发表于 2015-11-28 09:52:20 | 显示全部楼层
不懂!                                
回复 支持 反对

使用道具 举报

发表于 2015-12-4 13:50:11 | 显示全部楼层
答案是 d.4
回复

使用道具 举报

发表于 2015-12-4 21:43:22 | 显示全部楼层
求解,学习中
回复 支持 反对

使用道具 举报

发表于 2015-12-5 09:38:56 | 显示全部楼层
sizeof(test)跟sizeof(struct test)一样吗
回复 支持 反对

使用道具 举报

发表于 2015-12-5 13:42:01 来自手机 | 显示全部楼层
4D。。。。。。。。。。
回复

使用道具 举报

发表于 2015-12-20 16:26:06 | 显示全部楼层
不知道,看下答案
回复 支持 反对

使用道具 举报

发表于 2015-12-23 16:34:00 | 显示全部楼层
路过,学习下
回复 支持 反对

使用道具 举报

发表于 2015-12-23 21:21:18 | 显示全部楼层
444444444444444
回复 支持 反对

使用道具 举报

发表于 2015-12-24 10:29:31 | 显示全部楼层
4444444444444444444
回复 支持 反对

使用道具 举报

发表于 2015-12-24 12:00:25 | 显示全部楼层
222222222222222222222222222222222222222222位结构   经典!
回复 支持 反对

使用道具 举报

发表于 2015-12-25 00:45:39 来自手机 | 显示全部楼层
2222222222222
回复 支持 反对

使用道具 举报

发表于 2015-12-25 09:24:11 | 显示全部楼层
22222222222222222222222
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-23 18:31 , Processed in 0.069536 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表