2016-01-17 4 views
-2

Я нахожу числовые пределы длинного длинного int недостаточного. Есть ли какой-либо другой числовой тип в C++, например большое целое в java?Какой предел длинного длинного int?

Я наткнулся на этот вопрос в последнее время и не знал, как справиться с ней ..... https://blog.codechef.com/2009/07/02/tutorial-for-small-factorials/

+3

Нет нет никакого стандартного типа _bigint_. Есть библиотеки, поддерживающие такой thogh. –

+0

Есть несколько различных опций «большого int» для 'C++'. Возможно, посмотрите на это: https://gmplib.org/ – Galik

+0

Рассмотрите 'double' или' decimal'. – Zdenek

ответ

5

неподписанных долго долго ИНТ наибольший целый тип в стандартном C++ (она может содержать цифры от 0 до 18 446 744 073 709 551 615), если вы хотите больше тех, которые вы, возможно, придется искать какие-то bignum библиотеки, как это: http://www.ttmath.org/

+2

В стандарте не указано, насколько велики (или маленькие) числа, которые он может удерживать. Это зависит от реализации и должно быть проверено с помощью: 'std :: numeric_limits :: max()' – Christophe

+0

@Christophe - стандарт ** ** требует, чтобы каждый целочисленный тип охватывал минимальный диапазон. По сути, 'unsigned long long' должен иметь ширину не менее 64 бит. –

+0

@PeteBecker В то время как это справедливо для большинства реализаций, C++ 3.9.1 (pt.2 и 3) не гарантирует 64 бит. Можете ли вы предоставить какую-либо ссылку на это требование? – Christophe

0

Тип Название - долго долго

Bytes -

Диапазон значений - -9.223.372.036.854.775.808 в 9.223.372.036.854.775.807

Ref: Microsoft

+2

OP не указывал компилятор. Это зависит от реализации. – Christophe

Смежные вопросы