存储单位
字符 | 备注 | 转换关系 |
---|
bit | 位/b | 计算机表示数据最小的单位 |
byte | 字节/B | 1 byte = 8 bit / 1 B = 8 b |
KB | | 1KB=1024B |
另:一个字符=2字节
变量大小
首先了解到C语言中的各个数据类型的大小是由编译器位数所决定的!!!
C类型 | 32位环境 | 64位环境 |
---|
char | 1 | 1 |
short int | 2 | 2 |
int | 4 | 4 |
long int | 4 | 8 |
long long int | 8 | 8 |
char* | 4 | 8 |
float | 4 | 4 |
double | 8 | 8 |
表示精度
变量符号 | 中文名称 | 64位环境大小 | 范围 | 备注 | 精度 |
---|
short int | 短整型 | 2 | -32768 ~ 32767 | (−2)15(-2)^{15}(−2)15 ~ 2152^{15}215-1 | 每一个数字都可精确表示 |
unsigned short int | 无符短整型 | 2 | 0 ~ 65535 | 0 ~ (216 - 1) | 每一个数字都可精确表示 |
int | 整型 | 4 | -2147483648 ~ 2147483647 | (−2)31(-2)^{31}(−2)31 ~ 2312^{31}231-1 | 每一个数字都可精确表示 |
unsigned int | 无符整型 | 4 | 0 ~ 4294967295 | 0 ~ 2322^{32}232-1 | 每一个数字都可精确表示 |
float | 实型(单精度) | 4 | 1.18∗10−381.18*10^{-38}1.18∗10−38 ~ 3.40∗10383.40*10^{38}3.40∗1038 | | 7位有效位 |
double | 实型(双精度) | 8 | 2.23∗10−3082.23*10^{-308}2.23∗10−308 ~ 1.79∗103081.79*10^{308}1.79∗10308 | | 15位有效位 |
long double | 实型(长双精度) | 10 | 3.37∗10−49323.37*10^{-4932}3.37∗10−4932 ~ 1.18∗1049321.18*10^{4932}1.18∗104932 | | 19位有效位 |