将 double 或 float 转换为整数类型,哪种类型?

标签 c types casting

如果我想将 float 或 double 转换为整数类型,并且我不希望它在任何情况下溢出,我应该如何选择整数类型?

最佳答案

floats 的范围几乎总是大于 long longint64(但它可能取决于实现)。

例如,在 .Net 中,float 的范围是 3.4E +/- 38 ,但是 long longint64 是 –9,223,372,036,854,775,8089,223,372,036,854,775,807。你只是不能确定你不会溢出。 C 和 C++ 的其他实现具有相似的范围。

来源:http://msdn.microsoft.com/en-us/library/s3f49ktz.aspx .

关于将 double 或 float 转换为整数类型,哪种类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24570658/

相关文章:

language-agnostic - 弱类型相对于强类型的优势

arrays - Select-Object -Unique返回String而不是String数组

MySQL CAST 确实需要它的甜蜜时光

c++ - 重铸空指针容器

arrays - 在python中将stdin行转换为 "float/int"数组的更简单方法

c - 分段故障

C:获取两个字符串之间包含空格的字符串

c++ - C/C++中是否有称为 "hypochecking"的术语?

c - 在 Visual Studio 2012 中生成 .h 文件以及 DLL

java - java 比较器可以识别类型吗?