Austyn Krutsinger <akrutsin...@gmail.com> writes: > I think the approach is simple enough, but the possible > downside is that the entire string has to be read into memory before being > passed to mpz_set_str,
That's no big deal for mini-gmp, it's not intended to be used for huge numbers, or make a lot of effort to be as efficient. Which of course is a judgement call. Austyn Krutsinger <akrutsin...@gmail.com> writes: > According to current documentation mpz_set_str > <https://gmplib.org/manual/Assigning-Integers.html#index-mpz_005fset_005fstr> > allows spaces within the string and mpz_inp_str > <https://gmplib.org/manual/I_002fO-of-Integers.html#I_002fO-of-Integers> > only allows preceding white space. Torbjörn, had mentioned whitespace in an > inputted string is a mis-feature in the main GMP. Just curious what the > intended function of GMP actually is with respect to strings. I'm not sure how mpz_inp_str is intended to behave. If it's acceptable to read everything until white-space or EOF is encountered, that makes things a lot simpler. After a quick look at the code (in mpz), my understanding was that it should terminate at the first non-digit. I.e., for a file containing 0123456789, calling mpz_inp_str with base 10 would read the entire file, but calling mpz_inp_str with base 0 (or 8) would read until it sees the '8', ungetc that character, and convert only the digits preceding '8'. > Additionally, the 6.1.1 documentation says that the mpz_str_ functions > should allow for bases from 2 to 62. Currently mini-gmp only allows for > bases from 2 to 36. If there is any intent on allowing mini-gmp to support > strings with base from 2 to 62, I will write up a patch and submit for > review. Extending support up to base == 62 sounds reasonable to me. Regards, /Niels -- Niels Möller. PGP-encrypted email is preferred. Keyid C0B98E26. Internet email is subject to wholesale government surveillance. _______________________________________________ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel