0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【C语言进阶】面试题:请使用代码判断主机存储属于大端模式还是小端模式?

嵌入式物联网开发 来源:嵌入式物联网开发 作者:嵌入式物联网开发 2022-10-02 11:56 次阅读

C语言进阶】面试题:请使用代码判断主机存储属于大端模式还是小端模式?

经典面试题,有必要了解下!

1 问题描述

【C语言进阶】面试题:请使用代码判断主机存储属于大端模式还是小端模式?

2 示例代码

为此写了一段测试代码:

#include 
#include int main(int argc, const char *argv[])
{
int a = 0x12345678;
unsigned char *p = (unsigned char *)&a;
​
if (*p == 0x12) {
printf("big endian
");
} else {
printf("*p = %02x
", *p);
printf("little endian
");
}
​
return 0;
}

跑一下测试结果:

image-20220930230847586

正好满足: 低地址,存储低字节 ,所以它是 小端存储 ;反之,应该就是 大端存储

3 总结

  • 有必要了解下大端存储和小端存储的规则;
  • 记住口诀:DD为小,谐音: 弟弟为小
  • **即 **低地址,低字节 为小端存储;反之, 低地址,高字节 为大端存储。

4 更多分享

[架构师李肯]

架构师李肯全网同名 ),一个专注于嵌入式IoT领域的架构师。有着近10年的嵌入式一线开发经验,深耕IoT领域多年,熟知IoT领域的业务发展,深度掌握IoT领域的相关技术栈,包括但不限于主流RTOS内核的实现及其移植、硬件驱动移植开发、网络通讯协议开发、编译构建原理及其实现、底层汇编及编译原理、编译优化及代码重构、主流IoT云平台的对接、嵌入式IoT系统的架构设计等等。拥有多项IoT领域的发明专利,热衷于技术分享,有多年撰写技术博客的经验积累,坚信【知识改变命运,技术改变世界】!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4963

    文章

    18161

    浏览量

    286542
  • 存储
    +关注

    关注

    12

    文章

    3825

    浏览量

    84589
  • C语言
    +关注

    关注

    180

    文章

    7513

    浏览量

    124291
  • 代码
    +关注

    关注

    30

    文章

    4536

    浏览量

    66499
收藏 人收藏

    评论

    相关推荐

    weblogic正式服务属于什么模式

    WebLogic正式服务属于分布式服务模式。 WebLogic是一种基于JavaEE标准的应用服务器,其正式服务属于分布式服务模式。分布式服务模式
    的头像 发表于 12-05 15:01 208次阅读

    硬件工程师经典面试题详解

    硬件工程师经典面试题详解
    的头像 发表于 11-20 15:08 650次阅读
    硬件工程师经典<b class='flag-5'>面试题</b>详解

    请问如何配置STM32的FSMC的大端模式模式

    请问如何配置STM32的FSMC的大端模式模式还是硬件确定好了的不能修改?
    发表于 11-07 15:15

    面试题:malloc(0)会发生什么?

    至此,我们就可以根据这些计算出使用 glibc 在我们的电脑上运行时 malloc 出的最小空间的大小了。计算完后,还可以根据 malloc_usable_size 判断自己的计算是否正确,样例代码如下
    的头像 发表于 10-31 16:27 192次阅读
    <b class='flag-5'>面试题</b>:malloc(0)会发生什么?

    c语言面试题集(完整版)

    电子发烧友网站提供《c语言面试题集(完整版).pdf》资料免费下载
    发表于 10-20 11:20 1次下载
    c<b class='flag-5'>语言</b><b class='flag-5'>面试题</b>集(完整版)

    STM32中的FLASH数据是大端模式还是模式

    怎么判断STM32的FLASH数据是大端模式还是模式
    发表于 10-13 07:21

    iar编译器是大端模式还是模式的?

    iar编译器是大端模式还是模式
    发表于 09-25 08:00

    keil怎么设置大端和小模式

    keil怎么设置大端和小模式,用于stm32
    发表于 09-21 07:46

    大端ARM的程序员模型应用说明

    早期的ARM处理器(ARM2、ARM3、ARM2aS)使用小架构。当前一代的ARM处理器(从ARM6开始)可以选择以小大端模式工作。这些术语指的是多字节数(如32位字)
    发表于 08-23 07:26

    常见的嵌入式C语言面试题

    数组是最基本的数据结构,关于数组的面试题也屡见不鲜,本文罗列了一些常见的面试题,仅供参考。目前有以下18道题目。
    发表于 07-18 10:46 546次阅读

    c语言设计模式--状态模式(状态机)

    状态模式(状态机)是嵌入式开发中最重要、最核心的设计模式之一,毫不夸张的说,是否熟练掌握状态模式,很大程度上直接决定了嵌入式工程师的代码掌控能力。
    的头像 发表于 06-14 15:28 585次阅读
    c<b class='flag-5'>语言</b>设计<b class='flag-5'>模式</b>--状态<b class='flag-5'>模式</b>(状态机)

    用C语言实现简单工厂模式

    在我们的印象中,设计模式是由面向对象的语言(C++、JAVA)才能完成的,而 C 语言是面向过程的语言,不能实现设计模式
    发表于 06-05 11:28 264次阅读
    用C<b class='flag-5'>语言</b>实现简单工厂<b class='flag-5'>模式</b>

    【经典面试题请使用C语言编程实现对IPV4地址的合法性判断

    【经典面试题请使用C语言编程实现对IPV4地址的合法性判断
    的头像 发表于 05-16 15:23 1044次阅读

    分享10道有趣的嵌入式C语言面试题及答案

    10个C语言面试题,涉及指针、进程、运算、结构体、函数、内存,看看你能做出几个!
    的头像 发表于 05-09 10:54 1553次阅读

    软件如何判断MPC5777C当前正在使用哪种模式

    MPC5777C 如何检测 XOSC 模式的故障(旁路模式外部时钟连接到 EXTAL 引脚与使用外部振荡器)?软件如何判断 MPC5777C
    发表于 04-25 06:17