Как использовать 12-значный номер в C?

Я имею дело с математическим примером. Мне нужно использовать 12-значный номер для моего кода. Так какой тип данных я должен использовать, чтобы использовать число в моих функциях?

4 ответа

Решение

64-разрядные целые числа (long, int64_t, unsigned long, uint64_t) должен сделать трюк, или если вам нужны десятичные дроби, double или же long double,

Если у вас 64-битный целочисленный тип, я бы с этим согласился, поскольку он дает вам диапазон (18 полных цифр):

−9,223,372,036,854,775,808 to
+9,223,372,036,854,775,807

Для других задач (даже большие целые числа или массивные значения с плавающей запятой) я использую GMP, библиотеку GNU Multi-Precision. Это производительность впечатляет.

Вы также можете использовать "unsigned long long" со спецификатором формата "llu". Он отлично работает для 12-значного числа в C.

unsigned long long i=600851475143;
printf("%llu",i);

В поисках библиотеки под названием Bignum я нашел эту вики-страницу

Другие вопросы по тегам