数据类型介绍
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只有加法器)此外,补码与原码相互转换,其运算过程是相同的,不需 要额外的硬件电路。