任意の大きな整数に対して Solovoy-Strassen 素数性テストを実装しようとしています。bignum も作成します (これは学術プロジェクトであるため、サードパーティの実装は使用できません)。bignum の次の構造を決定しました。
struct {
uint64_t *tab;
int size; // number of limbs
int sign;
}
数字にはbase-32を使用します(したがって、部分積の場合はuint64_t、少なくとも部分積になると思います)。この決定は、以前に尋ねられた質問に基づいています。
私は立ち往生しています。任意のサイズの 10 進数として表された文字列を取得して、上記の bignum 構造に変換する方法がわかりません。
誰か教えてください。任意の文字列を uint16_t 配列に格納される 8 進数に変換するなど、より小さな例でもいいでしょう。
ありがとう。