计算机内最小单位为比特(bit),而一个字节(Byte)的大小等于8比特。
C语言的数据类型有以下几种:
1、基本类型:
(1)整型:
①int整型,大小为2或4或8字节
②short int短整型,大小通常为2字节
③long int长整型,大小至少为4字节
④long long int双长整型,大小至少为8字节
读写无符号整数(unsigned int)时,使用u(十进制)、o(八进制)或x(十六进制)代替%d中的d。
读写短整数时,要在前面加上h。例如:%hd
读写长整数时,要在前面加上l。例如:%ld
读写双长整数时,要在前面加上ll(仅限于C99)。例如:%lld
(2)char字符型:,通常1个字节。有符号字符的取值范围是-128~127,无符号字符的取值范围是0~255。‘0’的ASCII码是48,‘A’的ASCII码是65,‘a’的ASCII码是97。
(3)浮点型:
①float单精度浮点型,大小通常为4个字节,其中,指数长度8位,小数长度23位。精度为6个十进制数字。
%.nf:n是要显示的小数位数
%m.nf:m是数据宽度,n是小数点后的位数
%-m.nf:-表示左对齐。
②double双精度浮点型,大小通常为8个字节,精度为15个十进制数字。读取double类型的值时,要在f前加l,并且,只能在scanf中加l,不可以在printf中加l。
2、其他类型:
(1)void空类型
(2)_Bool或bool布尔类型:在<stdbool.h>
头文件中定义。当尝试打印 bool
或 _Bool
类型的值时,它们通常会被解释为整数(0 或 1)。
3、派生类型:
(1)指针:指向其他变量或对象的地址。
(2)数组:一系列相同类型的元素的集合。
(3)结构体struct:由多个不同类型的数据组成的复合数据类型。
(4)联合union:允许在相同的内存位置存储不同的数据类型。
(5)枚举enum:包含了一组命名的整数值。