正在载入在线练习界面,本页内容可直接阅读…
AK CSP › CSP-S 2022 第一轮真题 › 第6题
CSP-S 2022 第一轮 第6题:计算机系统用小端(LittleEndian)和大端(BigEndian)来描述多
题目
计算机系统用小端(Little Endian)和大端(Big Endian)来描述多字节数据的存储地 址顺序模式,其中小端表示将低位字节数据存储在低地址的模式、大端表示将高位字节数 据存储在低地址的模式。在小端模式的系统和大端模式的系统分别编译和运行以下 C++代码段表示的程序,将分别输出什么结果?( )
unsigned x = 0xDEADBEEF;
unsigned char *p = (unsigned char *)&x;
printf("%X", *p);选项
- A. EF、EF
- B. EF、DE
- C. DE、EF
- D. DE、DE
答案
B
题解
答案是 B:EF、DE。
p 指向变量 x 的起始地址,*p 只读取该地址上的 一个字节。按题目默认的 unsigned 占 4 字节,0xDEADBEEF 的存储顺序为:
| 模式 | 从低地址到高地址 | *p |
|---|---|---|
| 小端 | EF BE AD DE | EF |
| 大端 | DE AD BE EF | DE |
printf("%X", *p) 以大写十六进制输出这个字节,因此小端输出 EF,大端输出 DE。
记忆方法:小端低位在前,大端高位在前,这里“前”指低地址。
真题版权归 CCF 所有,本站仅用于非商业教学用途。页面加载后可直接在线作答,作答记录保存在本浏览器或账号中。 京ICP备2026056990号-1
京公网安备11010502062986号