首页 > 其他分享 >字节序(大小端)

字节序(大小端)

时间:2023-07-01 23:01:15浏览次数:38  
标签:00 字节 int char printf 大小 读取

一、字节序定义

字节序:讨论一个数据里,字节之间的排放顺序(对于int型有4字节,则讨论这4者之间的排列顺序)

假设一个整数 int a=0x11223344

低地址————————————>高地址

[ ][ ][ ][ ][ ][ ][11][22][33][44][ ][ ][ ][ ][ ][ ][ ][ ]     大端存储模式

[ ][ ][ ][ ][ ][ ][44][33][22][11][ ][ ][ ][ ][ ][ ][ ][ ]     小端存储模式

二、用代码判断大小端的两种方式

1.用char*型指针解引用int型数据

int main() {
	int a = 1; //0x00000001
	char* p = &a; //从a的首字节地址向后读取1字节,所以用char*
	if (*p == 0)
		printf("大端"); //00 00 00 01 ,读取的第一个字节为0
	if (*p == 1)
		printf("小端"); //01 00 00 00 ,读取的第一个字节为1

	return 0;
}

2.通过联合类型(共用体)判断

联合类型(共用体)链接

union Un {
	char a;
	int b;
}u; //联合体内定义的变量首字节地址相同

int main() {
	u.b = 1; //0x00000001
	if (u.a == 0)
		printf("大端"); //00 00 00 01 ,读取的第一个字节为0
	if (u.a == 1)
		printf("小端"); //01 00 00 00 ,读取的第一个字节为1
	return 0;
}


标签:00,字节,int,char,printf,大小,读取
From: https://blog.51cto.com/u_16102535/6601821

相关文章

  • 三个柱子上移动大小盘子
    印度传说defmove(起始塔当前金盘数量,起始塔,目标塔,辅助塔):if起始塔当前金盘数量>0:#将n-1个金盘从起始塔移动到辅助塔move(起始塔当前金盘数量-1,起始塔,辅助塔,目标塔)if起始塔当前金盘数量==1:print(f"移动......
  • 13 | 为什么表数据删掉一半,表文件大小不变?
    13|为什么表数据删掉一半,表文件大小不变?参数innodb_file_per_table表数据既可以存在共享表空间里,也可以是单独的文件。这个行为是由参数innodb_file_per_table控制的:ON表示的是,每个InnoDB表数据存储在一个以.ibd为后缀的文件中OFF表示的是,表的数据放在系统共享表......
  • 位,字节,字符
    位,字节,字符位(bit):是计算机内部储存的最小单位字节(byte):是计算机中数据处理的基本单位,习惯上用大写字母B来表示1B(byte,字节)=8bit(位)字符:指计算机中使用的字母,数字,字和符号1bit表示1位1B=8b1KB=1024B1M=1024KB1G=1024MJava中单个字符用单引号,字符串用双引号......
  • vscode调整界面大小,缩放字体快捷键
    无意中发现的,缩放快捷键,哈哈。别的工具很多都是Ctrl+鼠标滚轮放大缩小,结果vscode没成功。注意:是缩放了界面导致字体缩放,不是设置中修改字体大小。快捷键:放大:Ctrl++缩小:Ctrl+-......
  • 2023年字节阿里等大厂Android岗秋招(校招)它来了,行情预测和面试题汇总
    写在前面前段时间的金三银四相信大家的找工作和面试,有的人从里面收获了心仪的offer;有的人走了一趟,收获寥寥,不甚满意;还有的人在观望,等待下一个良机。那么6月份快过去了,秋招它要来了!!!6.12,科大讯飞“飞行计划”正式启动,整整提前了1个星期!6.14,麦肯锡2024秋招全面启动,比去年提前了半......
  • 数组的使用及数组的大小
    (文章目录)前言本文主要简单的介绍一下一维数组的使用方法。一、通过下标使用下标从0开始,依次递增。形式:数组名加下标。与定义的区别一个叫数组,一个叫下标运算区分有没有类型一个是元素个数,一个代表具体元素的下标代码:#include<stdio.h>intmain(void){inta[3]......
  • C# 序列化大小写 序列化对象为大小写 JsonConvert.SerializeObject
    关于C#序列化Json对象框架:.Net插件:Newtonsoft.Json最近有人问我序列化对象还区分大小写?我当时心想我都是通过Bejson格式化然后转换为C#类然后直接复制。没有关心过序列化成什么大小写。因为这样的话可以保持一致。直到有人问我才自己研究了一下。如下:usingNewtonsoft.......
  • 网工内推 | 互联网大厂,字节跳动招资深网工,最高40k*15薪
    01北京字节跳动招聘岗位:资深无线网络工程师职责描述:1、负责字节跳动全球办公室-无线网络运维保障工作;2、负责字节跳动所属线下门店和电商库房的无线网络运维保障工作;3、主导集中性无线网络问题治理;4、负责和无线架构团队共同优化无线网络架构。任职要求:1、熟悉WLAN设计、组网、漫......
  • 关于32位bmp的字节值问题
    32位的BMP是BGRA来存值的。由于前137个位是bmp的相关信息,故看其后的,可发现每4位是一组。FF是RGBA中的A,BMP的不是按照正常的RGB来的。 通过放大部分得到RGB值,在HexEditExp中搜索,发现搜索结果为0, 但是把45和0F位置调换一下搜索,发现结果很多。  由此可知,BMP的存值方式......
  • 字节抖音php解密留资的手机号
    订单查询(https://partner.open-douyin.com/docs/resource/zh-CN/local-life/develop/OpenAPI/order.query/query)接口返回的留资联系电话(加密提供)。加密字段解密方法(https://partner.open-douyin.com/docs/resource/zh-CN/local-life/develop/preparation/decrypt) /***......