Есть ли родной тип переменной C++, который «больше», чем двойной?
float is 7
double is 15 (конечно, в зависимости от компилятора)
Есть ли что-то более крупное, родное или даже не родное?Что больше, чем двойное?
ответ
C++ имеет long double
, но нет гарантии, что он более точно, чем простой double
. На платформе x86 обычно double
- 64 бита, а long double
- это 64 или 80 бит (что дает вам 19 значащих цифр, если я правильно помню).
Ваш пробег может отличаться, особенно если вы не на x86.
длинный двойной, но он, как правило, еще 15 мест точности.
Существуют также различные библиотеки bigfloat/bigint для C++, которые допускают произвольную математику точности. Там есть библиотека this на Microsoft Codeplex, но Googling найдет много других.
Вы можете использовать GNU MP. Его floating-point functions имеют неограниченный размер мантиссы и 32-битный или 64-разрядный (в зависимости от размера родного слова) показатель. Он также поставляется с C++ wrapper.
C++ имеет длинный двойной, но он все еще довольно ограничен. Доброе время попробуйте библиотеку gmp GNU. Вы можете настроить номера как можно больше, и это довольно забавно и хакерски, когда вы используете gmp_add вместо обычного +. Я уверен, что там есть C++-оболочка.
Длинный двойной, как правило, использует только 10 байт, но из-за выравнивания может фактически занять 12 или 16 (в зависимости от компилятора и параметров) байтов в структуре.
10-байтовый длинный двойной обеспечивает 64-битную мантиссу; это очень удобно, если вы хотите хранить 64-битные целые числа в плавающей запятой без потери точности.
длинных длинные двойные только некоторые процессоры позволят использовать его, хотя ...
подталкивания 1,53 или выше имеет multiprecision.
http://www.boost.org/doc/libs/1_54_0/libs/multiprecision/doc/html/index.html
- 1. Как напечатать двойное значение, которое меньше, чем другое двойное значение?
- 2. Что вызывает это больше SourceAlpha чем SourceGraphic
- 3. Двойное отрицание (!!) в javascript - в чем цель?
- 4. Простой способ проверить, если двойное значение больше нуля
- 5. Функция больше, чем массив?
- 6. Regex больше, чем $ 75
- 7. MySQL больше, чем в
- 8. Math.random() больше, чем предполагалось?
- 9. fancybox: больше, чем viewport?
- 10. если больше, чем MATLAB
- 11. imageView больше, чем parrent
- 12. Zepto больше, чем селектор
- 13. Оператор JS «Больше, чем»;
- 14. TabPage больше, чем TabControl
- 15. datagrid больше, чем usercontrol
- 16. RegularExpressionValidator больше, чем просто
- 17. SQL больше, чем в
- 18. Div больше, чем 100%
- 19. Заголовок больше, чем страница
- 20. Java больше, чем сравнение
- 21. MessageQueue больше, чем однажды
- 22. Ссылка больше, чем изображение
- 23. Больше, чем вопрос
- 24. старшинства() не больше, чем &&
- 25. Больше, чем просто EXC_BAD_ACCESS?
- 26. PDO больше, чем менее
- 27. fork() больше, чем ожидалось?
- 28. GridLayout больше, чем экран
- 29. Индексы «больше чем» запросов
- 30. AWK Threshold Больше чем
я обычно думаю поплавка как 4 и двойной, как 8, но вы имеете в виду приблизительное количество десятичных цифр, в то время как я имею в виду количество байт, используемых. – 2008-11-02 21:07:59
Тройной! (bah dum, chh!) – Thanatos 2010-09-03 02:59:10