Я пытаюсь выполнить работу модуля с номером до 10^18. Я не могу сохранить эти числа в int, и если я возьму его float, тогда я не могу применить оператор модуля, так как я могу это сделать.Как справиться с большими числами, которые не могут быть сохранены int in c
Я искал его, но не нашел ответа.
Я нашел один метод для typecast, но он не может решить мою проблему, а другой - использовать массив.
Итак, существует только способ использования массива.
Вы не показываете расчет, но может быть возможно выполнить модуль на его шагах, поэтому он никогда не становится большим. –
Если вы используете стандарт C99 или более поздний, вы можете использовать тип [long long] (https://en.wikipedia.org/wiki/C_data_types#Basic_types), который составляет не менее 64 бит, и будет содержать 10^18. – skrrgwasme
Возможный дубликат [Объявление 64-битных переменных в C] (http://stackoverflow.com/questions/19451101/declaring-64-bit-variables-in-c) – user3386109