[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |

## 6.5 Applying Integer Functions to Rationals

The set of `mpq`

functions is quite small. In particular, there are few
functions for either input or output. The following functions give direct
access to the numerator and denominator of an `mpq_t`

.

Note that if an assignment to the numerator and/or denominator could take an
`mpq_t`

out of the canonical form described at the start of this chapter
(see section Rational Number Functions) then `mpq_canonicalize`

must be
called before any other `mpq`

functions are applied to that `mpq_t`

.

- Macro:
*mpz_t***mpq_numref***(mpq_t*`op`) - Macro:
*mpz_t***mpq_denref***(mpq_t*`op`) Return a reference to the numerator and denominator of

`op`, respectively. The`mpz`

functions can be used on the result of these macros.

- Function:
*void***mpq_get_num***(mpz_t*`numerator`, mpq_t`rational`) - Function:
*void***mpq_get_den***(mpz_t*`denominator`, mpq_t`rational`) - Function:
*void***mpq_set_num***(mpq_t*`rational`, mpz_t`numerator`) - Function:
*void***mpq_set_den***(mpq_t*`rational`, mpz_t`denominator`) Get or set the numerator or denominator of a rational. These functions are equivalent to calling

`mpz_set`

with an appropriate`mpq_numref`

or`mpq_denref`

. Direct use of`mpq_numref`

or`mpq_denref`

is recommended instead of these functions.

[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |

This document was generated on *February 16, 2012* using *texi2html 5.0*.