Как использовать 12-значный номер в C? - PullRequest
5 голосов
/ 13 августа 2010

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

Ответы [ 4 ]

5 голосов
/ 13 августа 2010

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

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

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

2 голосов
/ 13 августа 2010

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

1 голос
/ 30 сентября 2013

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

unsigned long long i=600851475143;
printf("%llu",i);
0 голосов
/ 13 августа 2010

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

...