Я пытаюсь реализовать критерий примитивности Солового-Штрассена для произвольных больших целых чисел. Я также буду писать bignum (не могу использовать стороннюю реализацию, так как это академический проект). Я выбрал следующую структуру для Bignum:
struct {
uint64_t *tab;
int size; // number of limbs
int sign;
}
Я буду использовать base-32 для своих цифр (следовательно, uint64_t, для частичных продуктов, по крайней мере, я предполагаю, что они будут частичными продуктами). Это решение было основано на предыдущем заданном вопросе.
Я в тупике. Я не могу представить, как можно взять строку, представленную в виде десятичного числа произвольного размера, и преобразовать ее в структуру bignum выше.
Может ли кто-нибудь, пожалуйста, просветить меня. Было бы неплохо использовать еще меньший пример, например преобразование произвольной строки в восьмеричные цифры, которые будут храниться в массиве uint16_t.
Спасибо.