问题标签 [floating-point-conversion]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - C/C++ - 将 32 位浮点值转换为 24 位标准化定点值?
请让我知道如何将 32 位浮点数转换为 24 位标准化值?我尝试的是 (units * (1 <<24) 但似乎不起作用。请帮我解决这个问题。谢谢。
c - Max Float Fraction
- Platform: Linux 3.2.0 (Debian 7.0)
- Compiler: GCC 4.7.2 (Debian 4.7.2-5)
I am trying to convert character strings into floats. I am aware that there are already functions that do this. I am only doing this for practice. My function works well with simple numbers like 123.123, 1234, -678.8. But when I try to convert the string .99999999 into a float I end up with 1. Which is obviously a problem. I do not know if this is because .99999999 cannot be expressed by a float or if I am doing something incorrectly. The question I am asking is how can I calculate the maximum fraction that a float can express. How do I, for lack of a better term, know when a float is about to overflow?
Here is what I have so far.
Also cstrtof() is based on the following function.
c - 了解 if() 中的浮点变量比较
无法找到以下代码的原因:
输出为假。
现在显示正确的输出。这背后的原因是什么?
还有这种行为的原因是什么。
c - 浮点读为双精度
我的代码看起来像
我收到以下编译错误“警告:格式 %f 需要 'float *' 类型的参数,但参数“x”的类型为 double”
其中 x 是数字之一,scanf 命令中的所有 6 个参数都会发生这种情况,我已将所有变量指定为浮点数,但它不喜欢这样。
我该如何解决?谢谢!
c - 为什么浮动不起作用?
在我的代码中,输出是 2.000000 而它应该是 2.11111
为什么它不工作?
floating-point - 将带符号的 IEEE 754 浮点数转换为十六进制表示
我使用的是 Lua 的前端,不幸的是它已经过时了,所以我在这里坚持使用 5.1 版,这意味着bit32
库无法访问(我可能可以用来转换它)。
所以我想知道是否有人知道我可以实现浮点到二进制(数字)函数或者更好的是浮点到十六进制的方法。到目前为止,我能想到的最好的方法是十进制到二进制/十六进制函数......
c - 在 Lua 中,#INF 和 #IND 是什么?
我对Lua相当陌生。在测试时我发现#INF
/ #IND
。但是,我找不到解释它的好参考。
什么是#INF
、#IND
和类似的(例如底片)以及如何生成和使用它们?
vb.net - 获取单个常量与运行时相同
我尝试了等效的Michael Meadows EDIT 2,但在 VB.NET 中得到了不同的结果。(具体来说,Double
和Decimal
结果都是 600000.0238418580。)
我已经确定差异在于Single
存储到 a 中的除法的编译时准确性Single
以及当您强制除法在运行时发生时。
因此,THREE_FIFTHS
并vTHREE_FIFTHS
为asDecimal
求和提供不同的结果:
突出显示差异的结果是:
Three Fifths: 0.6000000000
Six Hundred Thousand: 600000.0000000000
Single: 599093.4000000000
Double: 600000.0238418580
Decimal: 600000.0238418580
vThree Fifths: 0.6000000000
Six Hundred Thousand: 600000.0000000000
Single: 599093.4000000000
Double: 600000.0238418580
Decimal: 600000.0000000000
我的问题是,你能让 VB.NET 得到一个Const Single
与运行时结果等效的表达式吗?(即产生THREE_FIFTHS
与 相同的结果vTHREE_FIFTHS
。)
c# - 获取浮点常量与运行时结果(和 VB.NET)相同
我尝试了等效的Michael Meadows EDIT 2,但在 VB.NET 中得到了不同的结果。(具体来说,Double
和Decimal
结果都是 600000.0238418580。)
我已经确定区别在于存储到 C# 中的float
( Single
) 除法的编译时准确性float
(这似乎更等同于 VB.NET 在存储到 a 时的准确性Double
)以及发生的情况(在两种语言中都不足为奇)当您强制除法在运行时发生。
因此,THREE_FIFTHS
并vTHREE_FIFTHS
为asDouble
求和提供不同的结果:
突出显示差异的结果是:
Three Fifths: 0.6000000000
Six Hundred Thousand: 600000.0000000000
Single: 599093.4000000000
Double: 599999.9999886850
Decimal: 600000.0000000000
vThree Fifths: 0.6000000000
Six Hundred Thousand: 600000.0000000000
Single: 599093.4000000000
Double: 600000.0238418580
Decimal: 600000.0000000000
我的问题是,您能否让 C# 获得const float
与运行时(和 VB.NET)结果等效的表达式?(即产生THREE_FIFTHS
与 相同的结果vTHREE_FIFTHS
。)