大华2013届校园招聘 :联合体试题
2013-10-08 16:57
176 查看
8.Intel X86 PC上以下程序运行的输出值是________
[cpp] view
plaincopy
int main(int argc, char *argv[])
{
union
{
struct
{
unsigned short s1:3;
unsigned short s2:3;
unsigned short s3:3;
}x;
char c;
}v;
v.c = 103;
cout<<v.x.s1<<endl;
return 0;
}
[cpp] view
plaincopy
答:7
103转换为8位的二进制为01100111,存储方式如下:
01|100|111
__|___|___
s3|s2 |s1
[cpp] view
plaincopy
int main(int argc, char *argv[])
{
union
{
struct
{
unsigned short s1:3;
unsigned short s2:3;
unsigned short s3:3;
}x;
char c;
}v;
v.c = 103;
cout<<v.x.s1<<endl;
return 0;
}
[cpp] view
plaincopy
答:7
1. 因为103二进制是01100111。 2.因为x和c为联合体,二者共用一段内存,这段内存共9字节,而v.c = 103,即这八字节内存存放的东西为103,也就是 01100111 3.s1、s2、s3分别占3字节,3字节,3字节(我们平常用到的都是小端模式,故s1取111,s2取100 ,s3取001)所以输出的内容就为:7,4,1
103转换为8位的二进制为01100111,存储方式如下:
01|100|111
__|___|___
s3|s2 |s1
相关文章推荐
- 大华股份2013届校园招聘软件算法类试题D卷
- 大华股份2013届校园招聘软件算法类试题D卷
- 大华股份2013届校园招聘软件算法类试题D卷
- 大华股份2013届校园招聘软件算法类试题D卷
- 骇人听闻的二分查找(某公司校园招聘笔试试题)(据说只有10%的程序员可以写出没有bug的二分查找)
- 微软2014校园招聘笔试试题
- 2013届华为校园招聘机试题
- 阿里巴巴2014年校园招聘试题解答
- 腾讯技术类校园招聘笔试试题
- 2014美团网校园招聘笔试试题
- 淘宝2011春季校园招聘笔试试题(回忆版)(附个人简历)
- 虔诚的学习者 腾讯技术类校园招聘笔试试题
- 2012年华为校园招聘上机试题(重庆地区)及答案解析
- 华为校园招聘上机试题Java实现(一)
- 360公司2015年秋季校园招聘笔试考卷(技术类 D)部分试题程序验证和解析1
- 微软2014校园招聘笔试试题
- 腾讯2014年校园招聘笔试试题
- 一道金蝶校园招聘试题数据库笔试题
- 华为校园招聘上机试题Java实现(二)
- 2014微软校园招聘笔试试题(英文)