Когда я отлаживаю свое программное обеспечение в VS C ++ путем пошагового выполнения кода, я замечаю, что некоторые вычисления с плавающей запятой отображаются в виде числа с точкой в конце, например:
1232432.
Одна операция, которая приводит к такому результату, заключается в следующем:
float result = pow(10, a * 0.1f) / b
где a - большое отрицательное число от -50 до -100, а b чаще всего около 1. Я читал несколько статей о проблемах с точностью, когда дело доходит до чисел с плавающей запятой. . Мой вопрос заключается в том, что конечная точка - это способ Visual-Studio сообщить мне, что точность очень низкая для этого числа, то есть для переменного результата. Если нет, то что это значит?
Это возникло сегодня на работе, и я помню, что была проблема с большими числами, поэтому это происходило каждый раз (и под «этим» я подразумеваю эту конечную точку). Но я точно помню, что это произошло, когда в номере было семь цифр. Здесь они пишут, что точность чисел с плавающей запятой составляет семь цифр:
Деление и точность чисел с плавающей запятой в C ++
Может ли это быть так, и Visual Studio сообщает мне об этом, ставя точку в конце?
Я ДУМАЮ, ЧТО Я НАШЕЛ ЭТО ! Он говорит: «Мантисса определяется как последовательность цифр, за которой следует точка». Что означает мантисса? Может ли это быть по-другому на ПК и при запуске кода на DSP? Дело в том, что я получаю разные результаты, и единственное, что мне кажется странным, это этот период, потому что я не знаю, что он означает.
http://msdn.microsoft.com/en-us/library/tfh6f0w2 (v = vs.71) .aspx