C语言中的double是最多多少位?

Python07

C语言中的double是最多多少位?,第1张

精度实数,占用字节8。

有效数字15~16(因为二进制转十进制问题)。

数值范围-1.7*10负308次方~1.7*10的308次方。

当有效数字全部是整数时,即整数有15~16位。

C语言中,输出double类型(双精度实型)以及float类型(单精度实型)时,默认输出6位小数(不足六位以 0 补齐,超过六位按四舍五入截断)。double a = 1printf("%lf\n", a)输出会是:1.000000

比如计算平均分,一到两位小数就足够了。可是有时六位又不够,需要更多位小数,比如计算高精度平方根。这时可以用printf的格式控制。如果要输出n位小数,那么可以用%.nlf的格式。其中n为数字。

所在函数库为【ctype.h】 

int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0

int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9')

返回非0值,否则返回0

int isascii(int ch) 若ch是字符(ASCII码中的0-127)返回非0值,否则返回0

int iscntrl(int ch) 若ch是作废字符(0x7F)或普通控制字符(0x00-0x1F)

以上内容参考:百度百科-C语言函数

double是双精度实型数(小数),int为整型,整型[signed]int -2147483648~+2147483648,双精度double 1.7 x 10^(-308)~ 1.7 x 10^(+308) 。

1、int 有符号整数,根据系统(编译器)不同,有不同的范围,16bits系统(DOS系统):-(2^15)到(2^15-1),32bits系统:-(2^31)到(2^31-1),64bits:-(2^63)到(2^63-1)。如果是无符号整数unsigned int,那么16bits系统(DOS系统):0到(2^16-1),32bits:0到(2^32-1),64bits:0到(2^64-1)。

2、double为双精度浮点型,能准确到小数点后十二位,1.7 x 10^(-308)~ 1.7 x 10^(+308)。

3、因为所有的计算机语言,每个类型都向更精确的方向去自动转。比如说,int能自动转double型,但是倒过来就不行,必须强制转。