### 5.3 Combined Initialization and Assignment Functions

Macro: `int` mpfr_init_set `(mpfr_t rop, mpfr_t op, mpfr_rnd_t rnd)` ¶
Macro: `int` mpfr_init_set_ui `(mpfr_t rop, unsigned long int op, mpfr_rnd_t rnd)` ¶
Macro: `int` mpfr_init_set_si `(mpfr_t rop, long int op, mpfr_rnd_t rnd)` ¶
Macro: `int` mpfr_init_set_d `(mpfr_t rop, double op, mpfr_rnd_t rnd)` ¶
Macro: `int` mpfr_init_set_ld `(mpfr_t rop, long double op, mpfr_rnd_t rnd)` ¶
Macro: `int` mpfr_init_set_z `(mpfr_t rop, mpz_t op, mpfr_rnd_t rnd)` ¶
Macro: `int` mpfr_init_set_q `(mpfr_t rop, mpq_t op, mpfr_rnd_t rnd)` ¶
Macro: `int` mpfr_init_set_f `(mpfr_t rop, mpf_t op, mpfr_rnd_t rnd)` ¶

  Initialize rop and set its value from op, rounded in the direction rnd. The precision of rop will be taken from the active default precision, as set by `mpfr_set_default_prec`.

Function: `int` mpfr_init_set_str `(mpfr_t x, const char *s, int base, mpfr_rnd_t rnd)` ¶

  Initialize x and set its value from the string s in base base, rounded in the direction rnd. See `mpfr_set_str`.