These functions assign new values to already initialized integers (see Initialization Functions).
void
mpz_set (mpz_t rop, const mpz_t op)
¶void
mpz_set_ui (mpz_t rop, unsigned long int op)
¶void
mpz_set_si (mpz_t rop, signed long int op)
¶void
mpz_set_d (mpz_t rop, double op)
¶void
mpz_set_q (mpz_t rop, const mpq_t op)
¶void
mpz_set_f (mpz_t rop, const mpf_t op)
¶Set the value of rop from op.
mpz_set_d
, mpz_set_q
and mpz_set_f
truncate op to
make it an integer.
int
mpz_set_str (mpz_t rop, const char *str, int base)
¶Set the value of rop from str, a null-terminated C string in base base. White space is allowed in the string, and is simply ignored.
The base may vary from 2 to 62, or if base is 0, then the leading
characters are used: 0x
and 0X
for hexadecimal, 0b
and
0B
for binary, 0
for octal, or decimal otherwise.
For bases up to 36, case is ignored; upper-case and lower-case letters have the same value. For bases 37 to 62, upper-case letters represent the usual 10..35 while lower-case letters represent 36..61.
This function returns 0 if the entire string is a valid number in base base. Otherwise it returns −1.
void
mpz_swap (mpz_t rop1, mpz_t rop2)
¶Swap the values rop1 and rop2 efficiently.