c语言各数据类型的范围与精度
Posted 卷王2048
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言各数据类型的范围与精度相关的知识,希望对你有一定的参考价值。
各数据类型的范围与精度
基本类型 | 字节数 | 位数 | 取值范围(二进制) | 取值范围(十进制) | 大概范围(十进制) | 精度(取决于尾数的范围) |
---|---|---|---|---|---|---|
byte | 1 byte | 8 bit | − 2 7 -2^7 −27 ~ 2 7 − 1 2^7 - 1 27−1 | − 128 -128 −128 ~ + 127 +127 +127 | ||
short | 2byte | 16bit | − 2 15 -2^15 −215 ~ 2 15 − 1 2^15 - 1 215−1 | − 32767 -32767 −32767 ~ + 32768 +32768 +32768 | 3.2 ∗ 1 0 4 3.2*10^4 3.2∗104 | |
int | 4byte | 32bit | − 2 31 -2^31 −231 ~ 2 31 − 1 2^31 - 1 231−1 | − 2147483648 -2147483648 −2147483648 ~ + 2147483647 +2147483647 +2147483647 | 2.1 ∗ 1 0 9 2.1*10^9 2.1∗109 | |
unsigned int | 4byte | 32bit | 0 0 0 ~ 2 32 − 1 2^32-1 232−1 | 0 0 0 ~ 4294967295 4294967295 4294967295 | 4.3 ∗ 1 0 9 4.3*10^9 4.3∗109 | |
long long | 8byte | 64bit | − 2 63 -2^63 −263 ~ 2 63 − 1 2^63 - 1 263−1 | − 9223372036854775808 -9223372036854775808 −9223372036854775808 ~ + 9223372036854775807 +9223372036854775807 +9223372036854775807 | 9.2 ∗ 1 0 18 9.2*10^18 9.2∗1018 | |
unsigned long long | 8byte | 64bit | 0 0 0 ~ 2 64 − 1 2^64 - 1 264−1 | 0 0 0 ~ 18446744073709551615 18446744073709551615 18446744073709551615 | 1.8 ∗ 1 0 19 1.8*10^19 1.8∗1019 | |
float | 4byte | 32bit | − 3.402823466 × 1 0 38 -3.402823466×10^38 −3.402823466×1038 ~ + 3.402823466 × 1 0 38 +3.402823466×10^38 +3.402823466×1038。 | 1 0 − 6 10^-6 10−6,即小数点后6位,超出的会进行舍入(即去掉),可以精确表示int 0 0 0 ~ 16777215 16777215 16777215(即 0 0 0 ~ 2 24 − 1 2^24 - 1 224−1) | ||
double | 8byte | 64bit | 1.7976931348623157 ∗ 1 0 308 1.7976931348623157*10^308 1.7976931348623157∗10308 | 1 0 − 15 10^-15 10−15,即小数点后15位,超出的会进行舍入(即去掉),可以精确表示long 0 0 0 ~ 9 , 007 , 199 , 254 , 740 , 991 9,007,199,254,740,991 9,007,199,254,740,991(即 0 0 0 ~ 2 53 − 1 2^53 - 1 253−1) | ||
char | 2byte | 16bit | 0 0 0 ~ 2 16 − 1 2^16 - 1 216−1 | |||
以上是关于c语言各数据类型的范围与精度的主要内容,如果未能解决你的问题,请参考以下文章