目录
  • 数据类型的介绍
  • 类型的基本归类
  • 整型在内存中的存储
  • 什么是大小端
  • 浮点数在内存中的存储
  • 浮点数在内存中的存储规则

数据类型的介绍

在前面的章节中我们基本认识到了各种数据类型,这里我们就稍微回忆以下吧

类型的意义:

  • 决定了访问内存空间的大小
  • 决定了看待内存空间的视角(例如:整型和字符数据类型)

类型的基本归类

整型家族:

char
    unsigned char
    signed char
short
    unsigned short [int]
    signed short [int]
int
    unsigned int
    signed int
long
    unsigned long [int]
    signed long [int]

浮点型家族:

float
double

构造类型:

> 数组类型
> 结构体类型    struct
> 枚举类型    enum
> 联合类型    union

指针类型:

int *pi;
char *pc;
float *pf;
void *pv;(泛型指针)

空类型:

void 表示空类型 (无类型)

通常用于 函数的返回类型、函数的参数、指针类型

//作为函数的返回类型
void f1()//不接受任何返回值
{
    ;
}
//作为函数的参数
int f2(void)//参数为void时,传入参数会报错
{
    ;
}
//作为指针类型
void* f3(void* pv)//参数为 void* 时,可接收任意类型的参数
{
    ;
}

整型在内存中的存储

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

三种表示方法均有符号位和数值位

符号位: " 0 " 表示 正," 1 "表示 负

数值位:

正数:

原码、反码、补码相同

负数:

原码:直接将数值按二进制翻译

反码:原码符号位不变,其它位按位取反

补码:反码+1

我们可以在内存中的存储看到:

C语言数据存储归类介绍

这里大家可能有个疑问,为什么ji在内存中会是这样?为什么ij内部二进制会倒过来存储呢??编译器坏了

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。