C语言 — 数据在内存中的存储(1)

本文涉及的产品
物联网平台,标准版 1个月
IoT设备身份认证,上限1000台 1个月
简介: 近期会更新整形和浮点型在内存中的存储方式,本文是对整形在内存中存储进行介绍。如果有帮助,还请各位小伙伴多多点赞关注收藏,后期会持续进行更新!!!本文内容数据类型详细介绍整形在内存中的存储:原码、反码、补码大小端字节序介绍及判断浮点型在内存中的存储解析
+关注继续查看

前言

image.png

本文内容


image.png

文章目录

前言

本文内容

一、类型的基本归类

1.整形类型

2.浮点数类型

3.指针类型

4.构造体类型

5.空类型

二、整形在内存中的存储方式

1.原码 反码 补码

原码

反码

补码

2.补码转为原码的两种方式

第一种

第二种

3.大小端存储模式

大端字节序

小端字节序

三、完结


一、类型的基本归类


1.整形类型

整形类型分为有符号、无符号两类

image.png

char 类型


 char               //char = signed char
 signed char        //有符号字符类型    
 unsigned char      //无符号字符类型

short 类型


 short              //short = signed short
 signed short       //有符号短整型类型
 unsigned short     //无符号短整形类型

int 类型


 int                //int = signed int
 signed int         //有符号整形类型
 unsigned int       //无符号整形类型

long 类型


 long               //long = signed long
 signed long        //有符号长整型类型
 unsigned long      //无符号长整形类型

2.浮点数类型

 float              //单精度浮点型
 double             //双精度浮点型

3.指针类型

int*                //整形指针类型
char*               //字符指针类型
float*              //浮点型指针类型
void*               //空指针类型

4.构造体类型

 arr[]              //数组类型 
 struct             //结构体类型
 enum               //枚举类型
 union              //联合类型

5.空类型

 void               //void表示空类型  通常应用于函数的返回类型、函数的参数、指针类型

二、整形在内存中的存储方式


1.原码 反码 补码

计算机中的整数有三种2进制表示方法,即原码反码补码

三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位


image.png

image.png

原码

image.png

反码

image.png

补码

image.png

2.补码转为原码的两种方式


第一种

image.png

image.png

第二种

image.png

image.png

3.大小端存储模式


字节序是指多字节数据在内存或网络传输过程中的存储顺序。由于计算机硬件和软件的不同,字节序也会有不同的表示方式,主要分为大端字节序和小端字节序。


大端字节序

image.png

小端字节序

image.png

这里设计一个程序来识别当前机器的字节序

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
void  estimate(int x)
{
    if (x == 1)
    {
        printf("小端");
    }
    else
    {
        printf("大端");
    }
}

int main()
{
    int a=1;
    char* p = (char*)&a;
    estimate(*p);
    return 0;
}

三、完结

image.png

目录
相关文章
|
7天前
|
存储 人工智能 C语言
C语言数据的存储(下)
C语言数据的存储(上)
33 1
|
7天前
|
存储 小程序 编译器
C语言数据的存储(上)
C语言数据的存储
60 1
|
17天前
|
存储 机器学习/深度学习 小程序
C语言中各种数据在内存中的存储
C语言中各种数据在内存中的存储
20 0
|
22天前
|
存储 C语言
C语言进阶-数据在内存中的存储(2)
C语言进阶-数据在内存中的存储(2)
14 0
|
22天前
|
存储 小程序 编译器
C语言进阶-数据在内存中的存储(1)
C语言进阶-数据在内存中的存储(1)
16 0
|
24天前
|
存储 机器学习/深度学习 C语言
【C语言航路】第九站:数据的存储(下)
【C语言航路】第九站:数据的存储
13 1
|
24天前
|
存储 编译器 C语言
【C语言航路】第九站:数据的存储(上)
【C语言航路】第九站:数据的存储
16 0
|
2月前
|
存储 编译器 C语言
C语言——数据在内存中的存储
C语言——数据在内存中的存储
|
2月前
|
存储 小程序 程序员
8k字详解整型(int)/字符型(char)/浮点型(float)/有符号(signed)/无符号(unsigned)数据在内存中的存储【程序员内功修炼/C语言】
8k字详解整型(int)/字符型(char)/浮点型(float)/有符号(signed)/无符号(unsigned)数据在内存中的存储【程序员内功修炼/C语言】
21 0
|
2月前
|
缓存 C语言
C语言——数据的输入输出
C语言——数据的输入输出
相关产品
物联网平台
物联网边缘计算
物联网络管理平台
推荐文章
更多