深度剖析数据在内存中的存储-初了解
【摘要】 数据类型介绍char //字符数据类型short //短整型int //整形long //长整型longlong //更长的整形float //单精度浮点数double //双精度浮点数//C语言有没有字符串类型?->没有 类型的意义:1.使用这个类型开辟内存空间的大小(大小决定了使用范围)。 2.如何看待内存空间的...
数据类型介绍
char //字符数据类型
short //短整型
int //整形
long //长整型
longlong //更长的整形
float //单精度浮点数
double //双精度浮点数
//C语言有没有字符串类型?->没有
类型的意义:
1.使用这个类型开辟内存空间的大小(大小决定了使用范围)。
2.如何看待内存空间的视角。
类型的基本归类:
整形家族:
char
unsignedchar
signedchar
short
unsignedshort [int]
signedshort [int]
int
unsignedint
signedint
long
unsignedlong [int]
signedlong [int]
浮点数家族:
float
double
构造类型:
>数组类型
>结构体类型struct
>枚举类型enum
>联合类型union
指针类型
int*pi;
char*pc;
float*pf;
void*pv;
空类型:
void表示空类型(无类型)
通常应用于函数的返回类型、函数的参数、指针类型。
原码反码补码的概念
计算机中的有符号数有三种表示方法,即原码、反码和补码。
三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位三种表示方法各不相同。
原码
直接将二进制按照正负数的形式翻译成二进制就可以。
反码
将原码的符号位不变,其他位依次按位取反就可以得到了。
补码
反码+1就得到补码。
正负数的计算规则是不相同的
正数的原、反、补码都相同。
对于整形来说:数据存放内存中其实存放的是补码。
为什么内存中存放的都是补码
为什么呢?
在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同
时,加法和减法也可以统一处理(CPU只有加法器)此外,补码与原码相互转换,其运算过程是相同的,不需
要额外的硬件电路。
今天就先到这吧~感谢你能看到这里!希望对你有所帮助!欢迎老铁们点个关注订阅这个专题! 同时欢迎大佬们批评指正!
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)