int 和 long int float 以及 double 和点云的取值范围
2017-03-21 09:14
176 查看
早期的操作系统是16位系统,
int用二字节表示,范围是-32768~32767;
long用4字节表示,范围是-2147483648~2147483647。
后来发展到32位操作系统,
int 用4字节表示,与long相同。
目前的操作系统已发展到64位操作系统,但因程序编译工艺的不同,两者表现出不同的差别:
32位编译系统:int占四字节,与long相同。
64位编译系统:int占四字节,long占8字节,long数据范围变为:-2^63~2^63-1
而激光雷达点云的数量动不动就是几百万千万甚至上以亿这个单位级,所以需要用到long int.
单精度浮点数(float)与双精度浮点数(double)的区别如下:
(1)在内存中占有的字节数不同
单精度浮点数在机内占4个字节
双精度浮点数在机内占8个字节
(2)有效数字位数不同
单精度浮点数有效数字8位
双精度浮点数有效数字16位
(3)所能表示数的范围不同
单精度浮点的表示范围:-3.40E+38 ~ +3.40E+38 这一点激光雷达数据的坐标用float类型就行了。
双精度浮点的表示范围:-1.79E+308 ~ +1.79E+308
(4)在程序中处理速度不同一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数
而定义坐标点的坐标看一下坐标的取值范围,定义相应的取值范围,来保证精度。
所以一般的点云数量都在int型范围之内。
int用二字节表示,范围是-32768~32767;
long用4字节表示,范围是-2147483648~2147483647。
后来发展到32位操作系统,
int 用4字节表示,与long相同。
目前的操作系统已发展到64位操作系统,但因程序编译工艺的不同,两者表现出不同的差别:
32位编译系统:int占四字节,与long相同。
64位编译系统:int占四字节,long占8字节,long数据范围变为:-2^63~2^63-1
而激光雷达点云的数量动不动就是几百万千万甚至上以亿这个单位级,所以需要用到long int.
单精度浮点数(float)与双精度浮点数(double)的区别如下:
(1)在内存中占有的字节数不同
单精度浮点数在机内占4个字节
双精度浮点数在机内占8个字节
(2)有效数字位数不同
单精度浮点数有效数字8位
双精度浮点数有效数字16位
(3)所能表示数的范围不同
单精度浮点的表示范围:-3.40E+38 ~ +3.40E+38 这一点激光雷达数据的坐标用float类型就行了。
双精度浮点的表示范围:-1.79E+308 ~ +1.79E+308
(4)在程序中处理速度不同一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数
而定义坐标点的坐标看一下坐标的取值范围,定义相应的取值范围,来保证精度。
int、long、long long取值范围
所以一般的点云数量都在int型范围之内。
相关文章推荐
- java中short、int、long、float、double取值范围
- 对于c语言int类型和float,以及double类型表示范围的计算
- 【c++】int\long\long long\double 等取值范围与详解
- 关于int类型取值范围的计算以及为何16位int类型范围是- 32768 ~ 32767
- 编写一个程序以确定分别由signed及unsigned限定的char、short、int及long类型变量的取值范围。采用打印标准头文件中的相应值以及直接计算两种方式实现
- int、long、long long, double, long double取值范围
- java基础之面试篇三---int,float,long,double取值范围,内存泄露
- java中byte、short、int、long、float、double类型的取值范围
- java中short、int、long、float、double取值范围
- Java中short、int、long、float、double的取值范围
- 关于int类型取值范围的计算 以及为何16位int类型范围是- 32768 ~ 32767
- java中int,float,long,double取值范围,内存泄露
- java中int,float,long,double取值范围,内存泄露
- java基础之面试篇三---int,float,long,double取值范围,内存泄露
- int,float,long,double取值范围,内存泄露
- 练习2-1 编写一个程序一确定分别由signed及unsigned限定的char,short,int及long类型变量的取值范围。采用打印标准头文件中的相应值以及直接计算两种方式实现。通过直接计算来确定浮点类型的取值范围是一项难度很大的任务。
- java中short、int、long、float、double取值范围
- Java笔记19 - java中short、int、long、float、double取值范围
- java中short、int、long、float、double取值范围
- Java中int,float,long,double取值范围,内存泄露