Если встроенные типы данных в C / C ++ не достаточно точны или имеют достаточный диапазон для вас по какой-либо причине, вы можете посмотреть на произвольную точность чисел. Это типы данных, которые управляют произвольным объемом памяти для хранения чисел произвольной точности. Для целых чисел это означает числа с произвольным количеством цифр. Обычно это распространяется на произвольные рациональные числа, то есть на целые числа. Кроме того, существуют также числа с произвольной точностью с плавающей запятой (вы указываете объем памяти, который вы хотели бы использовать), если они вам понадобятся.
Стандартный выбор библиотеки для C - GMP , который имеет все эти функции, но если у вас есть конкретные требования к корректности для чисел с плавающей запятой, вам может понадобиться дополнительная библиотека MPFR , и, наконец, есть также MPC , чтобы сделать то же самое для комплексных чисел.