今天来聊聊关于单精度浮点数和双精度浮点数范围,单精度浮点数和双精度浮点数的区别的文章,现在就为大家来简单介绍下单精度浮点数和双精度浮点数范围,单精度浮点数和双精度浮点数的区别,希望对各位小伙伴们有所帮助。
1、搂主,你这个问题可问得大啦,能说几大片呢?你问的是底层表示上的差别呢还是比如说打印格式上的差别呢?我大概知道你遇到的问题了。
2、多半是声明了一个double型变量,然后用scanf从键盘读取输入值,然后用printf打印出来是不是?double x;scanf( "%lf", &x );printf( "%.12f", x );你要注意,scanf是对float和double是区别对待的,是用不同的占位符float用%f,double用%lf,所以如果你把x声明为float就要用%f,如果声明成double就要用%lf。
3、但是printf不区分float和double,它一概当double处理,所以不要在%f里面加上l,而且C默认的输出精度是小数点后6位,你一般是看不到6位以后的值的,如果你想多显示一些精度值,你可以向我上面那样用%.nf, n为你想要的精度值。
相信通过单精度浮点数和双精度浮点数的区别这篇文章能帮到你,在和好朋友分享的时候,也欢迎感兴趣小伙伴们一起来探讨。