C学习笔记2-int类型数据在内存中的存储形式
来源:互联网 发布:水利水电计价软件 编辑:程序博客网 时间:2024/06/05 16:34
- 我们都知道现在一般的int类型在VC中是占4个字节的,如果想亲自看到具体占多少个当然可以用sizeof(int)来查看,然而内存地址是以一个字节Byte作为单位的,也就是说一个int类型数据占据了4个内存单元,即跨越了4个地址空间。那么int类型数据在内存中是怎么存放的呢,我们一探究竟。
- 首先我们可以定义一个int类型变量,如:
int a=100000;
这个值够大,用十六进制表示就是000186A0,那么我们用看看a在内存中的情况,如图;
其中左边是每一行的第一个内存单元的地址,我们用&a操作得知a的地址为0018ff30,那么a在内存中的数据就是A0860100,现在与上面的a对比一下,可以发现,其实内存中是以低地址存数据低位的方式存储数据的,
00 01 86 A0 --- A0 86 01 00
高位 低位 低地址 高地址
| | | |
| |
- 虽然只给出了int类型的例子,其实其他类型的数据也类似。这种排列方式就称之为小端(或者小尾),与之相对应的还有大端或者大尾。
a) Little-Endian就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。
b) Big-Endian就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端
当然还有不那么常用的Middle-Endian方式。
- C学习笔记2-int类型数据在内存中的存储形式
- C++学习笔记(2)----字符数据在内存中的存储形式
- int类型在内存中的存储方式
- int类型在内存中的存储方式
- float数据在内存中的存储形式
- short与int型在内存中的存储形式
- 基本类型数据在内存中的存储
- float类型数据在内存中的存储
- java int,byte型数据在内存中的形式
- C语言数据在内存中的存储
- 关于int类型数据在内存中的高低位存储问题
- 字符数据在内存中的存储形式及其使用方法(C实现)
- 字符数据在内存中的存储形式及使用方法
- float型数据在内存中的存储形式
- float型数据在内存中的存储形式
- float型数据在内存中的存储形式
- float型数据在内存中的存储形式
- C++float数据在内存中的表示形式
- 【LeetCode】Combinations
- php定时执行任务实现方法详解
- 内存Bank
- PAT 1040. Longest Symmetric String (25)
- 教你使用Navicat Lite新建mysql用户、数据库 by DedeCMS8
- C学习笔记2-int类型数据在内存中的存储形式
- I'm coming!
- 2.2.3 Partition List
- 算法面试题
- Leetcode Interleaving String
- X窗口系统的协议和架构
- 呼呼呼呼呵呵呵呵呵
- 你你你你你您 我我我我我
- 2.2.4 Remove Duplicates from Sorted List