文章目录
- 一、数据类型分类
- 二、基本数据类型
-
- [ 1、计算机常用存储单位](# 1、计算机常用存储单位)
- [ 2、数据类型的大小](# 2、数据类型的大小)
- [ 3、符号位](# 3、符号位)
-
- [ 有符号位 signed:](# 有符号位 signed:)
- [ 无符号位unsigned:](# 无符号位unsigned:)
- [ 4、数据类型的数值范围](# 4、数据类型的数值范围)
- [ 5、打印输出类型](# 5、打印输出类型)
一、数据类型分类

1、基本类型:
1)、整型类型:
整型类型包含:基本整型( int )、短整型( short int )、长整型( long int )、双长整型( long long int )、字符型( char )和布尔型( bool )。
注:整型数据可在类型符号前面加修饰符: signed(有符号整数类型)和 unsigned(无符号整数类型),若不指定则默认为"有符号类型"。
2)、浮点类型:
浮点类型包含:单精度浮点型( float )、双精度浮点型( double )和复数浮点型(单精度复数浮点型( float_complex )、双精度复数浮点型 (double_complex )和长精度复数浮点型( long long_complex )。
2、枚举类型:
枚举类型就只有枚举类型( enum )。
3、空类型:
空类型就只有空类型( void )。
4、构造类型:
构造类型包含:指针类型( * )、数组类型( [] )、结构体类型( struct )、共用体类型( union )和函数类型。
二、基本数据类型
1、计算机常用存储单位

2、数据类型的大小
使用C库函数sizeof查看类型所点空间大小。
c
#include <stdio.h>
int main()
{
printf("short:%d\n",sizeof(short));
printf("unsgned short:%d\n", sizeof(unsigned short));
printf("int:%d\n", sizeof(int));
printf("unsigned int:%d\n", sizeof(unsigned int));
printf("long:%d\n", sizeof(long));
printf("unsigned long:%d\n", sizeof(unsigned long));
printf("long long:%d\n", sizeof(long long));
printf("unsigned long long:%d\n", sizeof(unsigned long long));
printf("float:%d\n", sizeof(float));
printf("double:%d\n", sizeof(double));
printf("char:%d\n", sizeof(char));
return 0;
}
运行结果:

由运行结果可知:
char类型的数据类型大小为1字节即8位。
short类型的数据类型大小为2字节即16位。
int类型、long类型、float类型的数据类型大小为4字节即32位。
long long类型、double类型的数据类型大小为8字节即64位。
注意:若整数数据类型前面加unsigned即为无符号整数数据类型,数据类型大小不变。
3、符号位
有符号位 signed:
有符号整数数据类型的存储单元中,左边第一位表示符号位,其余位用来存放数值(如果第一位为0,表示该数为正数;如果第一位为1,表示该数为负数)。
无符号位unsigned:
无符号整数数据类型所有的位数都是用来存放数值的。比如,long int类型变量有32位存储位数,除去左边第一位表示符号位,剩下表示数值的只有31个比特位,而unsigned long int类型变量,32位都用来存放数值。
4、数据类型的数值范围

5、打印输出类型
