C语言数据类型整数类型 下表列出了关于标准整数类型的存储大小和取值范围: short(有符号短整型) 2字节(16位) 最小值=--32768 最大值=32767 %hd unsigned short(无符号短整型) 2字节(16位) 最小值=0 最大值=65535 %hu int(有符号整型) 4字节(32位) 最小值=-2147483648 最大值=2147483647 %d unsigned int(无符号整型) 4字节(32位) 最小值=0 最大值=4294967295 %u long(有符号长整型) 4字节(32位) 最小值=-2147483648 最大值=2147483647 %ld unsigned long(无符号长整型) 4字节(32位) 最小值=0 最大值=4294967295 %lu long long(有符号超长整型) 8字节(64位) 最小值=-9223372036854775808 最大值=9223372036854775807 %lld unsigned long long(无符号超长整型) 8字节(64位) 最小值=0 最大值=18446744073709551615 %llu 下面这段代码也可以查看各种整型类型的存储大小和取值范围: [C++] 纯文本查看 复制代码 #include <stdio.h>
#include <limits.h>
int main()
{
printf("%zd %hd %hd %hu\n", sizeof(short), SHRT_MIN, SHRT_MAX, USHRT_MAX);
printf("%zd %d %d %u\n", sizeof(int), INT_MIN, INT_MAX, UINT_MAX);
printf("%zd %ld %ld %lu\n", sizeof(long), LONG_MIN, LONG_MAX, ULONG_MAX);
printf("%zd %lld %lld %llu\n", sizeof(long long), LLONG_MIN, LLONG_MAX, ULLONG_MAX);
return 0;
} 浮点数类型下表列出了关于标准浮点数类型的存储大小和取值范围: float(单精度浮点型) 4字节(32位) 最小值=-3.4e+38 最大值=3.4e+38 6~7 %f double(双精度浮点型) 8字节(64位) 最小值=-1.8e+308 最大值=1.8e+308 15~16 %lf long double(长双精度浮点型) 16字节(128字节) 最小值=-1.2e+4932 最大值=1.2e+4932 18~19 %Lf 下面这段代码也可以查看各种浮点类型的存储大小和取值范围: [C++] 纯文本查看 复制代码 #include <stdio.h>
#include <float.h>
int main()
{
printf("%zd %e %e\n", sizeof(float), FLT_MIN, FLT_MAX);
printf("%zd %e %e\n", sizeof(double), DBL_MIN, DBL_MAX);
printf("%zd %e %e\n", sizeof(long double), LDBL_MIN, LDBL_MAX);
return 0;
} 字符类型下表列出了关于标准字符类型的存储大小和取值范围: char(字符型) 1字节(8位) 最小值=-128 最大值=127 或 最小值=0 最大值=255 %c signed char(有符号字符型) 1字节(8位) 最小值=-128 最大值=127 %c unsigned char(无符号字符型) 1字节(8位) 最小值=0 最大值=255 %c 下面这段代码也可以查看字符类型的存储大小和取值范围: [C++] 纯文本查看 复制代码 #include <stdio.h>
#include <limits.h>
int main()
{
printf("%zd %hhd %hhd %hhu\n", sizeof(char), CHAR_MIN, CHAR_MAX, UCHAR_MAX);
return 0;
} 布尔类型表列出了关于标准布尔类型的存储大小和取值范围: _Bool(布尔类型) 1字节(8位) 最小值=0(false) 最大值=1(true) %hhd 下面这段代码也可以查看布尔类型的存储大小: [C++] 纯文本查看 复制代码 #include <stdio.h>
int main()
{
printf("%zd\n", sizeof(_Bool));
return 0;
}
|