c语言-数据的存储

13 篇文章 0 订阅
12 篇文章 0 订阅

深度刨析数据在内存中的存储

本章重点
  • 1.数据类型详细介绍
  • 2.整型在内存中的存储:原码,反码,补码
  • 3.大小端字节序介绍及判断
  • 4.浮点型在内存中的存储解析

数据类型的介绍

1.内置类型
  • char-------字符数据类型
  • short-----短整型
  • int------整型
  • long------长整型
  • long long-----更长整形
  • float----单精度浮点数
  • double-----双精度浮点数
    类型的意义:使用这样的类型决定开辟空间的大小(大小决定了使用范围)

类型的基本归类:

整型家族:
  • char
  • unsigned char 有符号的char
  • signed char 无符号的char
  • short
  • unsigned short
  • signed short
  • int
  • unsigned int
  • signed int
  • long
  • unsigned long
  • signed long
浮点型家族
  • float
  • double
构造类型
  • 数组类型
  • 结构体类型—struct
  • 枚举类型 enum
  • 联合类型 union
指针类型
  • int* p
  • char* pc
  • float* pf
  • void* pv
  • 指针类型:决定了指针解引用操作符能够访问几个字节,char* p;p访问的是一个字节,int p;*p访问4个字节
  • 指针类型决定了指针+1,-1;加的是几个字节,char* p;*(p+1)跳过的是一个字节
空类型
  • void表示空类型(无类型)
  • 通常应用于函数的返回类型,函数的参数,指针类型

整形在内存中的存储

负数的原码,反码,补码求法
  • 原码:直接将二进制按照正负数的形式翻译成二进制就可以了
  • 反码:将原码的符号位不变,其他位依次按位取反
  • 补码:反码+1 得到补码
  • 正数的原 反 补相同

在这里插入图片描述

  • 结论:对于整形来说,数据存放内存中的其实是补码

那为什么整形在内存中是倒着存放的呢???

什么是大端小端??
  • 大端(存储)模式,是指数据的低位保存在内存的高地址,而数据的高位保存在内存的低地址
  • 小端(存储)模式,是指数据的低位保存在内存的低地址,而数据的高位保存在内存的高地址
写一段代码告诉我们当前机器的字节序是什么???

在这里插入图片描述


练习一

在这里插入图片描述


练习2

在这里插入图片描述

  • 有符号数 包括正数和负数
  • 而无符号数 都为非负数
  • 结论:有符号数的char类型范围是:-128–>127
  • 一个无符号char类型的范围是:0–>255
    在这里插入图片描述

练习3

在这里插入图片描述


练习4

在这里插入图片描述


练习5

在这里插入图片描述


练习6

在这里插入图片描述


浮点型在内存中的存储

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值