1 <html><head><meta http-equiv=
"Content-Type" content=
"text/html; charset=UTF-8"><title>Chapter
12. Numerics
</title><meta name=
"generator" content=
"DocBook XSL-NS Stylesheets V1.76.1"><meta name=
"keywords" content=
"
5 "><meta name=
"keywords" content=
"
11 "><link rel=
"home" href=
"../index.html" title=
"The GNU C++ Library"><link rel=
"up" href=
"bk01pt02.html" title=
"Part II. Standard Contents"><link rel=
"prev" href=
"algorithms.html" title=
"Chapter 11. Algorithms"><link rel=
"next" href=
"generalized_numeric_operations.html" title=
"Generalized Operations"></head><body bgcolor=
"white" text=
"black" link=
"#0000FF" vlink=
"#840084" alink=
"#0000FF"><div class=
"navheader"><table width=
"100%" summary=
"Navigation header"><tr><th colspan=
"3" align=
"center">Chapter
12.
14 </th></tr><tr><td width=
"20%" align=
"left"><a accesskey=
"p" href=
"algorithms.html">Prev
</a> </td><th width=
"60%" align=
"center">Part II.
16 </th><td width=
"20%" align=
"right"> <a accesskey=
"n" href=
"generalized_numeric_operations.html">Next
</a></td></tr></table><hr></div><div class=
"chapter" title=
"Chapter 12. Numerics"><div class=
"titlepage"><div><div><h2 class=
"title"><a name=
"std.numerics"></a>Chapter
12.
18 <a class=
"indexterm" name=
"id628715"></a>
19 </h2></div></div></div><div class=
"toc"><p><b>Table of Contents
</b></p><dl><dt><span class=
"section"><a href=
"numerics.html#std.numerics.complex">Complex
</a></span></dt><dd><dl><dt><span class=
"section"><a href=
"numerics.html#numerics.complex.processing">complex Processing
</a></span></dt></dl></dd><dt><span class=
"section"><a href=
"generalized_numeric_operations.html">Generalized Operations
</a></span></dt><dt><span class=
"section"><a href=
"numerics_and_c.html">Interacting with C
</a></span></dt><dd><dl><dt><span class=
"section"><a href=
"numerics_and_c.html#numerics.c.array">Numerics vs. Arrays
</a></span></dt><dt><span class=
"section"><a href=
"numerics_and_c.html#numerics.c.c99">C99
</a></span></dt></dl></dd></dl></div><div class=
"section" title=
"Complex"><div class=
"titlepage"><div><div><h2 class=
"title" style=
"clear: both"><a name=
"std.numerics.complex"></a>Complex
</h2></div></div></div><p>
20 </p><div class=
"section" title=
"complex Processing"><div class=
"titlepage"><div><div><h3 class=
"title"><a name=
"numerics.complex.processing"></a>complex Processing
</h3></div></div></div><p>
21 </p><p>Using
<code class=
"code">complex
<></code> becomes even more comple- er, sorry,
22 <span class=
"emphasis"><em>complicated
</em></span>, with the not-quite-gratuitously-incompatible
23 addition of complex types to the C language. David Tribble has
24 compiled a list of C++
98 and C99 conflict points; his description of
25 C's new type versus those of C++ and how to get them playing together
27 <a class=
"link" href=
"http://david.tribble.com/text/cdiffs.htm#C99-complex" target=
"_top">here
</a>.
28 </p><p><code class=
"code">complex
<></code> is intended to be instantiated with a
29 floating-point type. As long as you meet that and some other basic
30 requirements, then the resulting instantiation has all of the usual
31 math operators defined, as well as definitions of
<code class=
"code">op
<<</code>
32 and
<code class=
"code">op
>></code> that work with iostreams:
<code class=
"code">op
<<</code>
33 prints
<code class=
"code">(u,v)
</code> and
<code class=
"code">op
>></code> can read
<code class=
"code">u
</code>,
34 <code class=
"code">(u)
</code>, and
<code class=
"code">(u,v)
</code>.
35 </p><p>As an extension to C++
11 and for increased compatibility with C,
36 <code class=
"code"><complex.h
></code> includes both
<code class=
"code"><complex
></code>
37 and the C99
<code class=
"code"><complex.h
></code> (if the C library provides
39 </p></div></div></div><div class=
"navfooter"><hr><table width=
"100%" summary=
"Navigation footer"><tr><td width=
"40%" align=
"left"><a accesskey=
"p" href=
"algorithms.html">Prev
</a> </td><td width=
"20%" align=
"center"><a accesskey=
"u" href=
"bk01pt02.html">Up
</a></td><td width=
"40%" align=
"right"> <a accesskey=
"n" href=
"generalized_numeric_operations.html">Next
</a></td></tr><tr><td width=
"40%" align=
"left" valign=
"top">Chapter
11.
42 </td><td width=
"20%" align=
"center"><a accesskey=
"h" href=
"../index.html">Home
</a></td><td width=
"40%" align=
"right" valign=
"top"> Generalized Operations
</td></tr></table></div></body></html>