数据类型——C语言基础

整型:

长整型(long),短整型(short),普通整型(int)(用来定义整数的数据类型)

由于占用的内存空间大小不同,所以3个整型类型的取值范围是不同的

int的取值范围为:-2^31/2^31-1

short的取值范围为:-2^15/2^15-1

long的取值范围为:-2^63/2^63-1

在整型数据中,存在着无符号整型数据,意味着,无符号整型数据的最高位不是符号位

计算机的二进制数据中,有符号数据的最高位代表符号位,0表示正数,1表示负数

计算机中的所有数据都是以补码的形式存放于内存中,而正整数的源码等于补码。

源码,反码,补码的概念:

源码:通过短除法将十进制数转换出来的二进制数,称为源码

反码:将源码进行 符号位不变,其他位取反的操作

补码:将反码+1,就能得到补码

补码的补码即为源码

正整数的源码即为补码


补码的算术运算

无符号整型数据的表达方式,在数据类型前,加上unsigned来表示

关于整型数据的格式占位符:

short 和int用 %d来占位

long 用 %ld来占位

unsigned int和short用 %u来占位

unsigned long用 %lu来占位

字符型:

用char来表示,他在内存空间中的大小为1个字节

则char的取值范围是:-2^7/2^7-1

char类型的数据,用来表示所有的单个字符,包括但不仅限于'0'~'9','a'~'z','A'~'Z'

char类型的数据,用%c格式占位符来占位。

这些单个字符,都拥有自己的一个人为的编码,称为ASCII码

在打印一个字符的时候,可以打印字符本身,也可以打印字符对应ASCII码

同理,给定一个在ASCII码范围内的整数,可以打印出其对应的字符

浮点型数据:

单精度浮点型和双精度浮点型:分别用float和double来表示

浮点型可以用来申明所有的小数数据。

浮点型不存在无符号类型,浮点型的最高位为符号位,符号位之后的8位为指数位,剩下的为尾数位。

float:4个字节,32位,第1位是符号位,第2到9位为指数位,第10到32位为尾数位

double:8个字节,64位,第1位为符号位,第2到12位为指数位,第13到64位为尾数位

浮点型数据的格式占位符:float用%f来表示,double用%lf来表示

如果说,一个double数据需求精确到小数点后n位,则可以用%.nlf来表示

如果说,一个double数据,小数点后的有效位数只有2位,剩余的全是0,则可以用%g来表示只打印有效位数据。

浮点型数据不涉及位运算操作

地址类数据类型

(指针变量)

这种数据类型,使用%p来打印

你可能感兴趣的:(数据类型——C语言基础)