You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

117 lines
5.9 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This manual describes how to install and use the GNU multiple precision
arithmetic library, version 6.1.0.
Copyright 1991, 1993-2015 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document under
the terms of the GNU Free Documentation License, Version 1.3 or any later
version published by the Free Software Foundation; with no Invariant Sections,
with the Front-Cover Texts being "A GNU Manual", and with the Back-Cover
Texts being "You have freedom to copy and modify this GNU Manual, like GNU
software". A copy of the license is included in
GNU Free Documentation License. -->
<!-- Created by GNU Texinfo 6.4, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Assigning Integers (GNU MP 6.1.0)</title>
<meta name="description" content="How to install and use the GNU multiple precision arithmetic library, version 6.1.0.">
<meta name="keywords" content="Assigning Integers (GNU MP 6.1.0)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="index.html#Top" rel="start" title="Top">
<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
<link href="Integer-Functions.html#Integer-Functions" rel="up" title="Integer Functions">
<link href="Simultaneous-Integer-Init-_0026-Assign.html#Simultaneous-Integer-Init-_0026-Assign" rel="next" title="Simultaneous Integer Init &amp; Assign">
<link href="Initializing-Integers.html#Initializing-Integers" rel="prev" title="Initializing Integers">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en">
<a name="Assigning-Integers"></a>
<div class="header">
<p>
Next: <a href="Simultaneous-Integer-Init-_0026-Assign.html#Simultaneous-Integer-Init-_0026-Assign" accesskey="n" rel="next">Simultaneous Integer Init &amp; Assign</a>, Previous: <a href="Initializing-Integers.html#Initializing-Integers" accesskey="p" rel="prev">Initializing Integers</a>, Up: <a href="Integer-Functions.html#Integer-Functions" accesskey="u" rel="up">Integer Functions</a> &nbsp; [<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Assignment-Functions"></a>
<h3 class="section">5.2 Assignment Functions</h3>
<a name="index-Integer-assignment-functions"></a>
<a name="index-Assignment-functions"></a>
<p>These functions assign new values to already initialized integers
(see <a href="Initializing-Integers.html#Initializing-Integers">Initializing Integers</a>).
</p>
<dl>
<dt><a name="index-mpz_005fset"></a>Function: <em>void</em> <strong>mpz_set</strong> <em>(mpz_t <var>rop</var>, const mpz_t <var>op</var>)</em></dt>
<dt><a name="index-mpz_005fset_005fui"></a>Function: <em>void</em> <strong>mpz_set_ui</strong> <em>(mpz_t <var>rop</var>, unsigned long int <var>op</var>)</em></dt>
<dt><a name="index-mpz_005fset_005fsi"></a>Function: <em>void</em> <strong>mpz_set_si</strong> <em>(mpz_t <var>rop</var>, signed long int <var>op</var>)</em></dt>
<dt><a name="index-mpz_005fset_005fd"></a>Function: <em>void</em> <strong>mpz_set_d</strong> <em>(mpz_t <var>rop</var>, double <var>op</var>)</em></dt>
<dt><a name="index-mpz_005fset_005fq"></a>Function: <em>void</em> <strong>mpz_set_q</strong> <em>(mpz_t <var>rop</var>, const mpq_t <var>op</var>)</em></dt>
<dt><a name="index-mpz_005fset_005ff"></a>Function: <em>void</em> <strong>mpz_set_f</strong> <em>(mpz_t <var>rop</var>, const mpf_t <var>op</var>)</em></dt>
<dd><p>Set the value of <var>rop</var> from <var>op</var>.
</p>
<p><code>mpz_set_d</code>, <code>mpz_set_q</code> and <code>mpz_set_f</code> truncate <var>op</var> to
make it an integer.
</p></dd></dl>
<dl>
<dt><a name="index-mpz_005fset_005fstr"></a>Function: <em>int</em> <strong>mpz_set_str</strong> <em>(mpz_t <var>rop</var>, const char *<var>str</var>, int <var>base</var>)</em></dt>
<dd><p>Set the value of <var>rop</var> from <var>str</var>, a null-terminated C string in base
<var>base</var>. White space is allowed in the string, and is simply ignored.
</p>
<p>The <var>base</var> may vary from 2 to 62, or if <var>base</var> is 0, then the leading
characters are used: <code>0x</code> and <code>0X</code> for hexadecimal, <code>0b</code> and
<code>0B</code> for binary, <code>0</code> for octal, or decimal otherwise.
</p>
<p>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 letter represent the usual
10..35 while lower-case letter represent 36..61.
</p>
<p>This function returns 0 if the entire string is a valid number in base
<var>base</var>. Otherwise it returns -1.
</p></dd></dl>
<dl>
<dt><a name="index-mpz_005fswap"></a>Function: <em>void</em> <strong>mpz_swap</strong> <em>(mpz_t <var>rop1</var>, mpz_t <var>rop2</var>)</em></dt>
<dd><p>Swap the values <var>rop1</var> and <var>rop2</var> efficiently.
</p></dd></dl>
</body>
</html>