Надеюсь, у Вас все хорошо.
Я пытаюсь преобразовать индекс (число) для слова, используя для этого код ASCII. например:
index 0 -> " "
index 94 -> "~"
index 625798 -> "e@A"
index 899380 -> "!$^."
...
Как мы все видим, 4-й индекс соответствует строке из 4 символов. К сожалению, в какой-то момент эти комбинации становятся очень большими (например, для слова из 8 символов мне нужно выполнять операции с 16-значными числами (например: 6634204312890625), и становится действительно хуже, если я увеличиваю количество символов в слове. слово).
Чтобы поддерживать такие большие числа, мне пришлось обновить некоторые переменные моей программы с unsigned int на unsigned long long, но потом я понял, что modf() из C++ использует двойные числа и uint32_t (http://www.raspberryginger.com/jbailey/ minix/html/modf_8c-source.html).
Вопрос в следующем: возможно ли адаптировать modf() для использования 64-битных чисел, таких как unsigned long long? Боюсь, что в случае, если это невозможно, я ограничусь цифрами двойной длины.
Может ли кто-нибудь просветить меня, пожалуйста? знак равно
modf
вместо целочисленного по модулю%
. Как именно вы делаете маппинг и зачем он вам нужен? Могут быть более простые способы... - person jofel   schedule 21.03.2012