华新科 Walsin · 产品与技术资料捷比信主站 · 综合产品与服务
华新科 Walsin电容、电阻与电感
捷比信产品咨询0797-4282799

面试问题获取整数的每个字节

主题:获取每个字节0x12345678。方法一:关节结构与结构#include typedef unsigned int uint32_t; typedef unsigned char uint8_t;联合bit32_data {uint32_t数据;结构{uint8_t byte0; uint8_t byte1; uint8_t byte2; uint8_t byte3;}字节;}; int main(void){union bit32_data num; num.data = 0x12345678; printf(“ byte0 = 0x%x &quot ;, num.byte.byte0); printf(“ byte1 = 0x%x ”,num.byte.byte1); printf(“ byte2 = 0x%x ”,num.byte.byte2); printf(“ byte3 = 0x%x ”,num.byte.byte3); return 0;}操作结果:该方法的缺点是它会受到大小字节顺序的影响。
仅当大小顺序清晰时才可以使用它。以上是小端模式下的操作。
结果。结构和union方法不仅对获取数据的每个字节有用,而且在数据协议,数据位拆分等方面也很实用,然后我将对其进行更详细的介绍。
小型和小型终端的推荐文章:“ CPU的小型和小型模式? 》方法2:移位操作#include#defineGET_LOW_BYTE0(x)((x> 0)& 0x000000ff)/ *获得第0个字节* /#define GET_LOW_BYTE1(x)((x>>> 8)& 0x000000ff )/ *获取第一个字节* /#defineGET_LOW_BYTE2(x)(((x>> 16)& 0x000000ff)/ *获取第二个字节* /#defineGET_LOW_BYTE3(x)((x>>> 24)& 0x000000ff )/ *获取第三个字节* / int main(void){unsigned int a = 0x12345678; printf(“ byte0 = 0x%x ”,GET_LOW_BYTE0(a)); printf(“ byte1 = 0x%x ”,GET_LOW_BYTE1(a)); printf(“ byte2 = 0x%x ”,GET_LOW_BYTE2(a)); printf(“ byte3 = 0x%x ”,GET_LOW_BYTE3(a)); return 0;}操作结果:这也是获取每个字节数据的最常用和最有效的方法。这种类似的位操作被广泛应用于嵌入式应用中,例如LCD操作,这意味着像素颜色值,FLASH操作等。
推荐的位操作文章:“ C语言和嵌入式位操作本质技能的概述”。最后,以上就是这种共享。
如果您认为文章不错,请转发并观看。这也是我们不断更新的动力。
猜猜您喜欢它:嵌入式Hodgepodge Reader好处:2020年第二期精选干货的原始纸币摘要| protobuf-c的嵌入式平台使用1024G嵌入式资源进行广播!包括但不限于C / C ++,MCU,Linux等。在官方帐户聊天界面上回复1024,您可以免费获得它!免责声明:本文的内容经21ic授权后发布,版权归原始作者所有。
该平台仅提供信息存储服务。本文仅代表作者。
个人观点不代表该平台的立场。如有任何疑问,请与我们联系,谢谢!。

相关资料

Marvell和ADI宣布推出5G大规模MIMO无线电单元解决方案Sinus Semiconductor完成1亿人民币的天使轮融资锂硫电池和锂空气电池的技术分析BMS技术在动力锂电池中的作用分析LG Innotek宣布已开发出数字汽车钥匙模块美国专利商标局专利审判和上诉委员会裁定ClearOne胜诉ShureTranscontinental Advanced Coating Company宣布推出reflex™CE Gloss,这是一种高光泽度的透明硬涂层聚酯薄膜LeddarTech任命Dino Rambidis为首席财务官Phoenix SoftwareInternational®扩展了IBM®z /OS®JES3源代码许可协议研究人员开发了“液体”制剂。可以适应快速变化的训练环境的神经网络程序员回来了吗?美团威迈(Meituan Waimai)表示,“杀害熟悉的成员”是指是技术原因,软件位置缓存导致不正确的送货费用中国移动与东南大学举行战略合作协议签字仪式我应该参加培训吗?基于铬的Microsoft Edge终于达到了Microsoft想要的一致性三星去年第四季度的利润增长了26.4%福满电子投资建设LED芯片,5G RF芯片等项目磷酸铁锂电池的优缺点分析据报道,SMIC的关键供应已获得许可:3nm工艺已被征服!小米在Android 11的设备列表中添加了另一款手机型号为什么美国5G网络速度如此之慢?