文章目录
整型
可以理解为整数
整型变量的定义和输出
- int
打印格式 | 含义 |
---|---|
%d | 输出一个有符号的10进制int类型 |
%o(字母o) | 输出8进制的int类型 |
%x | 输出16进制的int类型,字母以小写输出 |
%X | 输出16进制的int类型,字母以大写输出 |
%u | 输出一个10进制的无符号数 |
内存空间
数据类型 | 占用空间 |
---|---|
short(短整型) | 2字节 |
int(整型) | 4字节 |
long(长整形) | Windows为4字节,Linux为4字节(32位),8字节(64位) |
long long(长长整形) | 8字节 |
注意
- 整型数据在内存中占的字节数与所选择的操作系统有关,C 语言标准中没有明确规定整型数据的长度
- 当一个小的数据类型赋值给一个大的数据类型,不会出错(编译器会自动转换)
- 当大的数据类型赋值给一个小的数据类型,数据会损失
有符号数和无符号数
可以理解为有符号数包含负数,而无符号数全部不含负数
看是否有符号位
有符号数
有符号数是最高位为符号位,0代表正数,1代表负数
无符号数
无符号数最高位不是符号位,而就是数的一部分,无符号数不可能是负数。
只表示数据,没有正负
有符号和无符号整型取值范围
数据类型 | 占用空间 | 取值范围 |
---|---|---|
short | 2字节 | -32768 到 32767 (-2的15次方2的15次方2^15^ 215) |
int | 4字节 | -2147483648 到 2147483647 (-2的31次方~2的31次方-1) |
long | 4字节 | -2147483648 到 2147483647(-2的31次方~2的31次方-1) |
unsigned short | 2字节 | 0 到 65535 (0~2的16次方-1) |
unsigned int | 4字节 | 0 到 4294967295 (0~2的32次方-1) |
unsigned long | 4字节 | 0 到 4294967295(0~2的32次方-1) |
输出
打印格式 | 含义 |
---|---|
%hd | 输出short类型 |
%d | 输出int类型 |
%ld | 输出long类型 |
%lld | 输出long long类型 |
%hu | 输出unsigned short类型 |
%u | 输出unsigned int类型 |
%lu | 输出unsigned long类型 |
%llu | 输出unsigned long long类型 |
sizeof关键字
用于计算一个数据的类型大小
sizeof不是函数,而是一个关键字
- 返回值
返回一个 无符号整数。 使用 %u 接收返回值。
使用
方法一
sizeof(类型名)
- sizeof(int)
方法二
sizeof(变量名)
- int a = 10; sizeof(a)
浮点型
浮点型变量用来存储小数数值
double型变量所表示的浮点数比 float 型变量更精确
内存空间
类型 | 占用空间 |
---|---|
float | 4字节 |
double | 8字节 |
数据范围
数据类型 | 取值范围 |
---|---|
float | |
double | |
unsigned float | |
unsigned double |
输出
关于小数点前后数字
printf("n = %06.5f\n", n);
显示6位数(包含小数点), 不足6位用0填充。并且保留5位小数。对第4位做四舍五入
字符型
字符型变量用于存储一个单一字符