Files
hustoj/web/cppreference-zh/chmhelp/c-language-operator_arithmetic.html
2025-08-01 12:57:54 +08:00

873 lines
57 KiB
HTML

<!DOCTYPE html>
<html lang="zh" dir="ltr" class="client-nojs" xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh">
<head><meta http-equiv="x-ua-compatible" content="ie=edge">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>&#31639;&#26415;&#36816;&#31639;&#31526;</title>
<link rel="stylesheet" href="ext.css" />
<link rel="stylesheet" href="site_modules.css" />
</head>
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-c_language_operator_arithmetic skin-cppreference2 action-view cpp-navbar">
<div id="cpp-content-base">
<div id="content"><a id="top"></a>
<h1 id="firstHeading" class="firstHeading">&#31639;&#26415;&#36816;&#31639;&#31526;</h1>
<div id="bodyContent">
<div id="contentSub"><span class="subpages">&lt; <a href="c.html">c</a>&lrm; | <a href="c-language.html">language</a></span></div>
<div id="mw-content-text" lang="zh" dir="ltr" class="mw-content-ltr" xml:lang="zh">
<p>&#31639;&#26415;&#36816;&#31639;&#31526;&#24212;&#29992;&#26631;&#20934;&#25968;&#23398;&#36816;&#31639;&#31526;&#21040;&#20854;&#25805;&#20316;&#25968;&#12290;</p>
<table class="metadata plainlinks ambox mbox-small-left ambox-notice" style="">
<tr>
<td class="mbox-empty-cell"></td>
<td class="mbox-text" style="">&#26412;&#33410;&#26410;&#23436;&#25104;<br />
&#21407;&#22240;&#65306;&#20026;&#36825;&#20010;&#21644;&#20854;&#20182;&#34920;&#26684;&#32771;&#34385;&#26356;&#36890;&#29992;&#30340;&#65292;&#35206;&#30422;&#22810;&#20010;&#19987;&#39064;&#30340; ToC</td>
</tr>
</table>
<table class="wikitable" style="font-size:85%;">
<tr style="text-align:center">
<th>&#36816;&#31639;&#31526;</th>
<th>&#36816;&#31639;&#31526;&#21517;</th>
<th>&#31034;&#20363;</th>
<th>&#32467;&#26524;</th>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">+</span></span></span></td>
<td>&#19968;&#20803;&#21152;</td>
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">+</span>a</span></span></td>
<td><b>a</b> &#25552;&#21319;&#21518;&#30340;&#20540;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">-</span></span></span></td>
<td>&#19968;&#20803;&#20943;</td>
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">-</span>a</span></span></td>
<td><b>a</b> &#30340;&#30456;&#21453;&#25968;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">+</span></span></span></td>
<td>&#21152;&#27861;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy2">+</span> b</span></span></td>
<td><b>a</b> &#21152; <b>b</b></td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">-</span></span></span></td>
<td>&#20943;&#27861;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy2">-</span> b</span></span></td>
<td>&#20174; <b>a</b> &#20943;&#21435; <b>b</b></td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">*</span></span></span></td>
<td>&#20056;&#27861;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy2">*</span> b</span></span></td>
<td><b>a</b> &#21644; <b>b</b> &#30340;&#31215;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">/</span></span></span></td>
<td>&#38500;&#27861;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy2">/</span> b</span></span></td>
<td><b>a</b> &#38500;&#20197; <b>b</b> &#30340;&#21830;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">%</span></span></span></td>
<td>&#27169;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy2">%</span> b</span></span></td>
<td><b>a</b> &#38500;&#20197; <b>b</b> &#30340;&#20313;&#25968;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c">~</span></span></td>
<td>&#36880;&#20301;&#38750;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">~a</span></span></td>
<td><b>a</b> &#30340;&#36880;&#20301;&#38750;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy3">&amp;</span></span></span></td>
<td>&#36880;&#20301;&#19982;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy3">&amp;</span> b</span></span></td>
<td><b>a</b> &#21644; <b>b</b> &#30340;&#36880;&#20301;&#19982;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy3">|</span></span></span></td>
<td>&#36880;&#20301;&#25110;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy3">|</span> b</span></span></td>
<td><b>a</b> &#21644; <b>b</b> &#30340;&#36880;&#20301;&#25110;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy3">^</span></span></span></td>
<td>&#36880;&#20301;&#24322;&#25110;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy3">^</span> b</span></span></td>
<td><b>a</b> &#21644; <b>b</b> &#30340;&#36880;&#20301;&#24322;&#25110;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy1">&lt;&lt;</span></span></span></td>
<td>&#36880;&#20301;&#24038;&#31227;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy1">&lt;&lt;</span> b</span></span></td>
<td><b>a</b> &#24038;&#31227; <b>b</b> &#20301;</td>
</tr>
<tr style="text-align:center">
<td><span class="t-c"><span class="mw-geshi c source-c"><span class="sy1">&gt;&gt;</span></span></span></td>
<td>&#36880;&#20301;&#21491;&#31227;</td>
<td><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy1">&gt;&gt;</span> b</span></span></td>
<td><b>a</b> &#21491;&#31227; <b>b</b> &#20301;</td>
</tr>
</table>
<h3><span class="mw-headline" id=".E6.BA.A2.E5.87.BA">&#28322;&#20986;</span></h3>
<p>&#26080;&#31526;&#21495;&#25972;&#25968;&#31639;&#26415;&#22987;&#32456;&#36827;&#34892; <span class="texhtml" style="white-space: nowrap;">modulo 2<span class="t-su">n<br /></span></span> &#65292;&#20854;&#20013; n &#26159;&#35813;&#29305;&#23450;&#25972;&#25968;&#20013;&#30340;&#20301;&#25968;&#12290;&#20363;&#22914;&#23545;&#20110; <span class="t-c"><span class="mw-geshi c source-c"><span class="kw4">unsigned</span> <span class="kw4">int</span></span></span> &#65292;&#21152;&#19968;&#21040; <span class="t-lc"><a href="c-types-limits.html">UINT_MAX</a></span> &#32473;&#20986; <span class="t-c"><span class="mw-geshi c source-c">&#8203;<span class="nu0">0</span>&#8203;</span></span> &#65292;&#32780;&#20174; <span class="t-c"><span class="mw-geshi c source-c">&#8203;<span class="nu0">0</span>&#8203;</span></span> &#20943;&#19968;&#32473;&#20986; <span class="t-lc"><a href="c-types-limits.html">UINT_MAX</a></span> &#12290;</p>
<p>&#26377;&#31526;&#21495;&#31639;&#26415;&#36816;&#31639;&#28322;&#20986;&#65288;&#32467;&#26524;&#19981;&#31526;&#21512;&#32467;&#26524;&#31867;&#22411;&#65289;&#26102;&#65292;&#34892;&#20026;&#26410;&#23450;&#20041;&#65306;&#21487;&#20197;&#25353;&#29031;&#34920;&#31034;&#65288;&#20856;&#22411;&#20026;&#34917;&#30721;&#65289;&#30340;&#35268;&#21017;&#22238;&#21367;&#65292;&#21487;&#20197;&#22312;&#26576;&#20123;&#24179;&#21488;&#19978;&#25110;&#30001;&#20110;&#32534;&#35793;&#22120;&#36873;&#39033;&#65288;&#20363;&#22914; gcc &#21644; clang &#20013;&#30340; <code>-ftrapv</code> &#65289;&#38519;&#33853;&#65292;&#25110;&#23436;&#20840;<a rel="nofollow" class="external text" href="http://blog.llvm.org/2011/05/what-every-c-programmer-should-know_14.html">&#34987;&#32534;&#35793;&#22120;&#20248;&#21270;&#25481;</a>&#12290;</p>
<h4><span class="mw-headline" id=".E6.B5.AE.E7.82.B9.E7.8E.AF.E5.A2.83">&#28014;&#28857;&#29615;&#22659;</span></h4>
<p>&#33509;&#35774;&#32622; <a href="c-preprocessor-impl.html"><tt>#pragma STDC FENV_ACCESS</tt></a> &#20026; <code>ON</code> &#65292;&#21017;&#25152;&#26377;&#28014;&#28857;&#31639;&#26415;&#36816;&#31639;&#31526;&#36981;&#24490;&#24403;&#21069;&#28014;&#28857;<a href="c-numeric-fenv-FE_round.html">&#33293;&#20837;&#26041;&#21521;</a>&#24182;&#25253;&#21578; <a href="c-numeric-math-math_errhandling.html"><tt>math_errhandling</tt></a> &#20013;&#25351;&#23450;&#30340;&#38169;&#35823;&#65292;&#38500;&#38750;&#23427;&#20204;&#26159;<a href="c-language-initialization.html">&#38745;&#24577;&#21021;&#22987;&#21270;&#22120;</a>&#30340;&#19968;&#37096;&#20998;&#65288;&#35813;&#24773;&#20917;&#19979;&#19981;&#24341;&#21457;&#28014;&#28857;&#24322;&#24120;&#65292;&#32780;&#33293;&#20837;&#27169;&#24335;&#20026;&#21040;&#26368;&#25509;&#36817;&#65289;&#12290;</p>
<h4><span class="mw-headline" id=".E6.B5.AE.E7.82.B9.E7.BC.A9.E7.95.A5">&#28014;&#28857;&#32553;&#30053;</span></h4>
<p>&#38500;&#38750;&#35774;&#32622; <a href="c-preprocessor-impl.html"><tt>#pragma STDC FP_CONTRACT</tt></a> &#20026; <code>OFF</code> &#65292;&#21542;&#21017;&#21487;&#33021;&#22914;&#21516;&#20013;&#38388;&#32467;&#26524;&#25317;&#26377;&#26080;&#38480;&#33539;&#22260;&#21644;&#31934;&#24230;&#19968;&#33324;&#36827;&#34892;&#25152;&#26377;&#28014;&#28857;&#31639;&#26415;&#65292;&#36825;&#31181;&#20248;&#21270;&#30465;&#30053;&#33509;&#20934;&#30830;&#25353;&#20889;&#27861;&#27714;&#20540;&#34920;&#36798;&#24335;&#65292;&#21017;&#20250;&#35266;&#23519;&#21040;&#30340;&#33293;&#20837;&#35823;&#24046;&#21644;&#28014;&#28857;&#24322;&#24120;&#12290;&#20363;&#22914;&#65292;&#20801;&#35768;&#20197;&#21333;&#26465;&#34701;&#21512;&#20056;&#21152; CPU &#25351;&#20196;&#23454;&#29616; <span class="t-c"><span class="mw-geshi c source-c"><span class="br0">(</span>x<span class="sy2">*</span>y<span class="br0">)</span> <span class="sy2">+</span> z</span></span> &#65292;&#25110;&#25226; <span class="t-c"><span class="mw-geshi c source-c">a <span class="sy1">=</span> x<span class="sy2">*</span>x<span class="sy2">*</span>x<span class="sy2">*</span>x<span class="sy4">;</span></span></span> &#20248;&#21270;&#25104; <span class="t-c"><span class="mw-geshi c source-c">tmp <span class="sy1">=</span> x<span class="sy2">*</span>x<span class="sy4">;</span> a <span class="sy1">=</span> tmp<span class="sy2">*</span>tmp</span></span> &#12290;</p>
<p>&#19982;&#32553;&#30053;&#26080;&#20851;&#65292;&#28014;&#28857;&#31639;&#26415;&#30340;&#20013;&#38388;&#32467;&#26524;&#21487;&#20197;&#25317;&#26377;&#24322;&#20110;&#20854;&#31867;&#22411;&#25152;&#25351;&#23450;&#30340;&#33539;&#22260;&#21644;&#31934;&#24230;&#65292;&#35265; <span class="t-lc"><a href="c-types-limits-FLT_EVAL_METHOD.html">FLT_EVAL_METHOD</a></span> &#12290;</p>
<h3><span class="mw-headline" id=".E4.B8.80.E5.85.83.E7.AE.97.E6.9C.AF">&#19968;&#20803;&#31639;&#26415;</span></h3>
<p>&#19968;&#20803;&#31639;&#26415;&#36816;&#31639;&#31526;&#34920;&#36798;&#24335;&#25317;&#26377;&#24418;&#24335;</p>
<table class="t-sdsc-begin">
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><code><b>+</b></code> <span class="t-spar">expression</span></td>
<td>(1)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><code><b>-</b></code> <span class="t-spar">expression</span></td>
<td>(2)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
</table>
<div class="t-li1"><span class="t-li">1)</span> &#19968;&#20803;&#21152;&#65288;&#25552;&#21319;&#65289;</div>
<div class="t-li1"><span class="t-li">2)</span> &#19968;&#20803;&#20943;&#65288;&#30456;&#21453;&#25968;&#65289;
<p>where</p>
<table class="t-par-begin">
<tr class="t-par">
<td><span class="t-spar">expression</span></td>
<td>-</td>
<td>&#20219;&#20309;<a href="c-language-arithmetic_types.html">&#31639;&#26415;&#31867;&#22411;</a>&#34920;&#36798;&#24335;</td>
</tr>
</table>
</div>
<p>&#19968;&#20803;&#21152;&#21644;&#19968;&#20803;&#20943;&#37117;&#39318;&#20808;&#24212;&#29992;<a href="c-language-conversion.html">&#25972;&#25968;&#25552;&#21319;</a>&#21040;&#20854;&#25805;&#20316;&#25968;&#65292;&#28982;&#21518;</p>
<ul>
<li>&#19968;&#20803;&#21152;&#36820;&#22238;&#25552;&#21319;&#21518;&#30340;&#20540;</li>
<li>&#19968;&#20803;&#20943;&#36820;&#22238;&#25552;&#21319;&#21518;&#20540;&#30340;&#30456;&#21453;&#25968;&#65288;&#38500;&#20102; NaN &#30340;&#30456;&#21453;&#25968;&#26159;&#21478;&#19968; NaN &#65289;</li>
</ul>
<p>&#34920;&#36798;&#24335;&#31867;&#22411;&#20026;&#25552;&#21319;&#21518;&#30340;&#31867;&#22411;&#65292;&#32780;<a href="c-language-value_category.html">&#20540;&#31867;&#21035;</a>&#20026;&#38750;&#24038;&#20540;&#12290;</p>
<h4><span class="mw-headline" id=".E6.B3.A8.E6.84.8F">&#27880;&#24847;</span></h4>
<p>&#22312;&#20856;&#22411;&#65288;&#34917;&#30721;&#65289;&#24179;&#21488;&#19978;&#24212;&#29992;&#21040; <span class="t-lc"><a href="c-types-limits.html">INT_MIN</a></span> &#12289; <span class="t-lc"><a href="c-types-limits.html">LONG_MIN</a></span> &#25110; <span class="t-lc"><a href="c-types-limits.html">LLONG_MIN</a></span> &#26102;&#65292;&#19968;&#20803;&#20943;&#24341;&#36215;&#26377;&#31526;&#21495;&#25972;&#25968;&#28322;&#20986;&#25152;&#33268;&#30340;&#26410;&#23450;&#20041;&#34892;&#20026;&#12290;</p>
<p>C++ &#20013;&#19968;&#20803;&#36816;&#31639;&#31526; + &#20134;&#33021;&#29992;&#20110;&#20854;&#20182;&#20869;&#24314;&#31867;&#22411;&#65292;&#20363;&#22914;&#25968;&#32452;&#21644;&#20989;&#25968;&#65292;&#20294; C &#20013;&#19981;&#33021;&#12290;</p>
<div class="t-example">
<div class="t-example-live-link"></div>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="c source-c">
<pre class="de1"><span class="co2">#include &lt;stdio.h&gt;</span>
<span class="co2">#include &lt;complex.h&gt;</span>
<span class="kw4">int</span> main<span class="br0">(</span><span class="kw4">void</span><span class="br0">)</span>
<span class="br0">{</span>
<span class="kw4">char</span> c <span class="sy1">=</span> <span class="st0">&#39;a&#39;</span><span class="sy4">;</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;sizeof char: %zu sizeof int: %zu<span class="es1">\n</span>&quot;</span>, <span class="kw4">sizeof</span> c, <span class="kw4">sizeof</span> <span class="sy2">+</span>c<span class="br0">)</span><span class="sy4">;</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;-1, where 1 is signed: %d<span class="es1">\n</span>&quot;</span>, <span class="sy2">-</span><span class="nu0">1</span><span class="br0">)</span><span class="sy4">;</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;-1, where 1 is unsigned: %u<span class="es1">\n</span>&quot;</span>, <span class="sy2">-</span>1u<span class="br0">)</span><span class="sy4">;</span>
<span class="kw4">double</span> <a href="c-numeric-complex-complex.html"><span class="kw743">complex</span></a> z <span class="sy1">=</span> <span class="nu0">1</span> <span class="sy2">+</span> <span class="nu0">2</span><span class="sy2">*</span>I<span class="sy4">;</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;-(1+2i) = %.1f%+.1f<span class="es1">\n</span>&quot;</span>, <a href="c-numeric-complex-creal.html"><span class="kw754">creal</span></a><span class="br0">(</span><span class="sy2">-</span>z<span class="br0">)</span>, <a href="c-numeric-complex-cimag.html"><span class="kw751">cimag</span></a><span class="br0">(</span><span class="sy2">-</span>z<span class="br0">)</span><span class="br0">)</span><span class="sy4">;</span>
<span class="br0">}</span></pre></div>
</div>
<p>&#21487;&#33021;&#30340;&#36755;&#20986;&#65306;</p>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="text source-text">
<pre class="de1">sizeof char: 1 sizeof int: 4
-1, where 1 is signed: -1
-1, where 1 is unsigned: 4294967295
-(1+2i) = -1.0-2.0</pre></div>
</div>
</div>
<h3><span class="mw-headline" id=".E5.8A.A0.E6.B3.95.E6.80.A7.E8.BF.90.E7.AE.97.E7.AC.A6">&#21152;&#27861;&#24615;&#36816;&#31639;&#31526;</span></h3>
<p>&#19979;&#21015;&#21152;&#27861;&#24615;&#31639;&#26415;&#36816;&#31639;&#31526;&#25317;&#26377;&#24418;&#24335;</p>
<table class="t-sdsc-begin">
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>+</b></code> <span class="t-spar">rhs</span></td>
<td>(1)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>-</b></code> <span class="t-spar">rhs</span></td>
<td>(2)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
</table>
<div class="t-li1"><span class="t-li">1)</span> &#21152;&#27861;&#65306; <span class="t-spar">lhs</span> &#19982; <span class="t-spar">rhs</span> &#24517;&#39035;&#20026;&#19979;&#21015;&#20043;&#19968;
<dl>
<dd>
<ul>
<li>&#37117;&#25317;&#26377;<a href="c-language-arithmetic_types.html">&#31639;&#26415;&#31867;&#22411;</a>&#65292;&#21253;&#21547;&#22797;&#25968;&#21644;&#34394;&#25968;</li>
<li>&#19968;&#20010;&#26159;&#25351;&#21521;&#23436;&#25972;&#23545;&#35937;&#30340;&#25351;&#38024;&#31867;&#22411;&#65292;&#21478;&#19968;&#20010;&#25317;&#26377;&#25972;&#25968;&#31867;&#22411;</li>
</ul>
</dd>
</dl>
</div>
<div class="t-li1"><span class="t-li">2)</span> &#20943;&#27861;&#65306; <span class="t-spar">lhs</span> &#19982; <span class="t-spar">rhs</span> &#24517;&#39035;&#20026;&#19979;&#21015;&#20043;&#19968;
<dl>
<dd>
<ul>
<li>&#37117;&#25317;&#26377;<a href="c-language-arithmetic_types.html">&#31639;&#26415;&#31867;&#22411;</a>&#65292;&#21253;&#21547;&#22797;&#25968;&#21644;&#34394;&#25968;</li>
<li><span class="t-spar">lhs</span> &#25317;&#26377;&#25351;&#21521;&#23436;&#25972;&#23545;&#35937;&#30340;&#25351;&#38024;&#31867;&#22411;&#65292; <span class="t-spar">rhs</span> &#25317;&#26377;&#25972;&#25968;&#31867;&#22411;</li>
<li>&#37117;&#26159;&#25351;&#21521;&#25317;&#26377;<a href="c-language-types.html#.E5.85.BC.E5.AE.B9.E7.B1.BB.E5.9E.8B">&#20860;&#23481;</a>&#31867;&#22411;&#30340;&#23436;&#25972;&#23545;&#35937;&#25351;&#38024;&#65292;&#24573;&#30053;&#38480;&#23450;&#31526;</li>
</ul>
</dd>
</dl>
</div>
<h4><span class="mw-headline" id=".E7.AE.97.E6.9C.AF.E5.8A.A0.E6.B3.95.E4.B8.8E.E5.87.8F.E6.B3.95">&#31639;&#26415;&#21152;&#27861;&#19982;&#20943;&#27861;</span></h4>
<p>&#33509;&#20004;&#20010;&#25805;&#20316;&#25968;&#37117;&#25317;&#26377;<a href="c-language-arithmetic_types.html">&#31639;&#26415;&#31867;&#22411;</a>&#65292;&#21017;</p>
<ul>
<li>&#39318;&#20808;&#65292;&#36827;&#34892;<a href="c-language-conversion.html#.E9.80.9A.E5.B8.B8.E7.AE.97.E6.9C.AF.E8.BD.AC.E6.8D.A2">&#36890;&#24120;&#31639;&#26415;&#36716;&#25442;</a></li>
<li>&#28982;&#21518;&#65292;&#36981;&#24490;&#25968;&#23398;&#35268;&#21017;&#65292;&#21152;&#25110;&#20943;&#25805;&#20316;&#25968;&#22312;&#25552;&#21319;&#21518;&#30340;&#20540;&#65288;&#23545;&#20110;&#20943;&#27861;&#65292;&#20174; <span class="t-spar">lhs</span> &#20943;&#21435; <span class="t-spar">rhs</span> &#65289;&#65292;&#38500;&#20102;</li>
</ul>
<dl>
<dd>
<ul>
<li>&#33509;&#25805;&#20316;&#25968;&#20043;&#19968;&#20026; NaN &#65292;&#21017;&#32467;&#26524;&#20026; NaN</li>
<li>&#21516;&#21495;&#26080;&#31351;&#22823;&#20943;&#26080;&#31351;&#22823;&#20026; NaN &#24182;&#24341;&#21457; <span class="t-lc"><a href="c-numeric-fenv-FE_exceptions.html">FE_INVALID</a></span></li>
<li>&#27491;&#26080;&#31351;&#22823;&#21152;&#36127;&#26080;&#31351;&#22823;&#20026; NaN &#24182;&#24341;&#21457; <span class="t-lc"><a href="c-numeric-fenv-FE_exceptions.html">FE_INVALID</a></span></li>
</ul>
</dd>
</dl>
<p>&#22797;&#25968;&#21644;&#34394;&#25968;&#21152;&#20943;&#27861;&#23450;&#20041;&#22914;&#19979;&#65288;&#27880;&#24847;&#33509;&#20004;&#20010;&#25805;&#20316;&#25968;&#22343;&#20026;&#34394;&#25968;&#21017;&#32467;&#26524;&#31867;&#22411;&#20026;&#34394;&#25968;&#65292;&#32780;&#33509;&#19968;&#20010;&#25805;&#20316;&#25968;&#20026;&#23454;&#25968;&#32780;&#21478;&#19968;&#20026;&#34394;&#25968;&#65292;&#21017;&#32467;&#26524;&#20026;&#22797;&#25968;&#65292;&#21516;&#36890;&#24120;&#31639;&#26415;&#36716;&#25442;&#25152;&#25351;&#23450;&#65289;&#65306;</p>
<table class="wikitable" style="text-align:center; font-size:85%; max-width:90em;">
<tr>
<th>+ or -</th>
<th>u</th>
<th>iv</th>
<th>u + iv</th>
</tr>
<tr>
<th>x</th>
<td>x &plusmn; u</td>
<td>x &plusmn; iv</td>
<td>(x &plusmn; u) &plusmn; iv</td>
</tr>
<tr>
<th>iy</th>
<td>&plusmn;u + iy</td>
<td>i(y &plusmn; v)</td>
<td>&plusmn;u + i(y &plusmn; v)</td>
</tr>
<tr>
<th>x + iy</th>
<td>(x &plusmn; u) + iy</td>
<td>x + i(y &plusmn; v)</td>
<td>(x &plusmn; u) + i(y &plusmn; v)</td>
</tr>
</table>
<p><br /></p>
<div class="t-example">
<div class="t-example-live-link"></div>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="c source-c">
<pre class="de1"><span class="co1">// &#24037;&#20316;&#20013;</span>
<span class="co1">// &#27880;&#24847;&#65306;&#37319;&#29992; c/language/conversion &#31034;&#20363;&#30340;&#19968;&#37096;&#20998;</span></pre></div>
</div>
</div>
<h4><span class="mw-headline" id=".E6.8C.87.E9.92.88.E7.AE.97.E6.9C.AF">&#25351;&#38024;&#31639;&#26415;</span></h4>
<ul>
<li>&#33509;&#25351;&#38024; <code>P</code> &#25351;&#21521;&#19979;&#26631;&#20026; <code>I</code> &#30340;&#25968;&#32452;&#20803;&#32032;&#65292;&#21017;</li>
</ul>
<dl>
<dd>
<ul>
<li><span class="t-c"><span class="mw-geshi c source-c">P<span class="sy2">+</span>N</span></span> &#19982; <span class="t-c"><span class="mw-geshi c source-c">N<span class="sy2">+</span>P</span></span> &#26159;&#25351;&#21521;&#21516;&#19968;&#25968;&#32452;&#20013;&#19979;&#26631;&#20026; <code>I+N</code> &#30340;&#20803;&#32032;&#30340;&#25351;&#38024;</li>
<li><span class="t-c"><span class="mw-geshi c source-c">P<span class="sy2">-</span>N</span></span> &#26159;&#25351;&#21521;&#21516;&#19968;&#25968;&#32452;&#20013;&#19979;&#26631;&#20026; <code>I-N</code> &#30340;&#20803;&#32032;&#30340;&#25351;&#38024;</li>
</ul>
</dd>
</dl>
<p>&#20165;&#33509;&#21407;&#25351;&#38024;&#21644;&#32467;&#26524;&#25351;&#38024;&#37117;&#25351;&#21521;&#21516;&#19968;&#25968;&#32452;&#20013;&#30340;&#20803;&#32032;&#65292;&#25110;&#35813;&#25968;&#32452;&#30340;&#23614;&#21518;&#19968;&#20301;&#32622;&#65292;&#34892;&#20026;&#25165;&#26377;&#23450;&#20041;&#12290;&#27880;&#24847;&#22312; p &#25351;&#21521;&#25968;&#32452;&#39318;&#20803;&#32032;&#26102;&#65292;&#25191;&#34892; p-1 &#26159;&#26410;&#23450;&#20041;&#34892;&#20026;&#65292;&#24182;&#19988;&#22312;&#26576;&#20123;&#24179;&#21488;&#19978;&#21487;&#33021;&#22833;&#36133;&#12290;</p>
<ul>
<li>&#33509;&#25351;&#38024; <code>P1</code> &#25351;&#21521;&#19979;&#26631;&#20026; <code>I</code> &#30340;&#25968;&#32452;&#20803;&#32032;&#65288;&#25110;&#23614;&#21518;&#19968;&#20301;&#32622;&#65289;&#32780; <code>P2</code> &#26159;&#25351;&#21521;&#21516;&#19968;&#25968;&#32452;&#30340;&#19979;&#26631;&#20026; <code>J</code> &#30340;&#20803;&#32032;&#65288;&#25110;&#23614;&#21518;&#19968;&#20301;&#32622;&#65289;&#65292;&#21017;</li>
</ul>
<dl>
<dd>
<ul>
<li><span class="t-c"><span class="mw-geshi c source-c">P1<span class="sy2">-</span>P2</span></span> &#25317;&#26377;&#31561;&#20110; <span class="t-c"><span class="mw-geshi c source-c">I<span class="sy2">-</span>J</span></span> &#30340;&#20540;&#21644; <span class="t-lc"><a href="c-types-ptrdiff_t.html">ptrdiff_t</a></span> &#31867;&#22411;&#65288;&#26377;&#31526;&#21495;&#25972;&#25968;&#31867;&#22411;&#65292;&#26368;&#22823;&#22823;&#23567;&#20856;&#22411;&#22320;&#20026;&#33021;&#22768;&#26126;&#30340;&#26368;&#22823;&#23545;&#35937;&#30340;&#19968;&#21322;&#65289;</li>
</ul>
</dd>
</dl>
<p>&#20165;&#33509;&#32467;&#26524;&#36866;&#21512;&#20110; <span class="t-lc"><a href="c-types-ptrdiff_t.html">ptrdiff_t</a></span> &#65292;&#34892;&#20026;&#25165;&#26377;&#23450;&#20041;&#12290;</p>
<p>&#20026;&#25351;&#38024;&#31639;&#26415;&#30340;&#30446;&#30340;&#65292;&#25226;&#25351;&#21521;&#38750;&#25968;&#32452;&#20803;&#32032;&#30340;&#23545;&#35937;&#30340;&#25351;&#38024;&#24403;&#20570;&#25351;&#21521;&#22823;&#23567;&#20026; 1 &#30340;&#25968;&#32452;&#39318;&#20803;&#32032;&#30340;&#25351;&#38024;&#12290;</p>
<div class="t-example">
<div class="t-example-live-link"></div>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="c source-c">
<pre class="de1"><span class="co1">// &#24037;&#20316;&#20013;</span>
<span class="kw4">int</span> n <span class="sy1">=</span> <span class="nu0">4</span>, m <span class="sy1">=</span> <span class="nu0">3</span><span class="sy4">;</span>
<span class="kw4">int</span> a<span class="br0">[</span>n<span class="br0">]</span><span class="br0">[</span>m<span class="br0">]</span><span class="sy4">;</span> <span class="co1">// 4 &#20010; VLA &#30340; VLA &#65292;&#27599;&#20010;&#26377; 3 &#20010; int</span>
<span class="kw4">int</span> <span class="br0">(</span><span class="sy2">*</span>p<span class="br0">)</span><span class="br0">[</span>m<span class="br0">]</span> <span class="sy1">=</span> a<span class="sy4">;</span> <span class="co1">// p == &amp;a[0] </span>
p <span class="sy1">=</span> p <span class="sy2">+</span> <span class="nu0">1</span><span class="sy4">;</span> <span class="co1">// p == &amp;a[1] &#65288; VLA &#25152;&#29992;&#30340;&#25351;&#38024;&#31639;&#26415;&#19968;&#22914;&#24179;&#24120;&#65289;</span>
<span class="br0">(</span><span class="sy2">*</span>p<span class="br0">)</span><span class="br0">[</span><span class="nu0">2</span><span class="br0">]</span> <span class="sy1">=</span> <span class="nu0">99</span><span class="sy4">;</span> <span class="co1">// &#26356;&#25913; a[1][2]</span></pre></div>
</div>
</div>
<h3><span class="mw-headline" id=".E4.B9.98.E6.B3.95.E6.80.A7.E8.BF.90.E7.AE.97.E7.AC.A6">&#20056;&#27861;&#24615;&#36816;&#31639;&#31526;</span></h3>
<p>&#19979;&#21015;&#20056;&#27861;&#24615;&#36816;&#31639;&#31526;&#25317;&#26377;&#24418;&#24335;</p>
<table class="t-sdsc-begin">
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>*</b></code> <span class="t-spar">rhs</span></td>
<td>(1)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>/</b></code> <span class="t-spar">rhs</span></td>
<td>(2)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>%</b></code> <span class="t-spar">rhs</span></td>
<td>(3)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
</table>
<div class="t-li1"><span class="t-li">1)</span> &#20056;&#27861;&#12290; <span class="t-spar">lhs</span> &#19982; <span class="t-spar">rhs</span> &#24517;&#39035;&#25317;&#26377;<a href="c-language-arithmetic_types.html">&#31639;&#26415;&#31867;&#22411;</a></div>
<div class="t-li1"><span class="t-li">2)</span> &#38500;&#27861;&#12290; <span class="t-spar">lhs</span> &#19982; <span class="t-spar">rhs</span> &#24517;&#39035;&#25317;&#26377;<a href="c-language-arithmetic_types.html">&#31639;&#26415;&#31867;&#22411;</a></div>
<div class="t-li1"><span class="t-li">3)</span> &#20313;&#25968;&#12290; <span class="t-spar">lhs</span> &#19982; <span class="t-spar">rhs</span> &#24517;&#39035;&#25317;&#26377;<a href="c-language-arithmetic_types.html">&#25972;&#25968;&#31867;&#22411;</a></div>
<ul>
<li>&#39318;&#20808;&#65292;&#36827;&#34892;<a href="c-language-conversion.html#.E9.80.9A.E5.B8.B8.E7.AE.97.E6.9C.AF.E8.BD.AC.E6.8D.A2">&#36890;&#24120;&#31639;&#26415;&#36716;&#25442;</a>&#12290;&#28982;&#21518;&hellip;&hellip;</li>
</ul>
<h4><span class="mw-headline" id=".E4.B9.98.E6.B3.95">&#20056;&#27861;</span></h4>
<p>&#20108;&#20803;&#36816;&#31639;&#31526; * &#36981;&#24490;&#36890;&#24120;&#31639;&#26415;&#23450;&#20041;&#65292;&#36827;&#34892;&#20854;&#25805;&#20316;&#25968;&#65288;&#22312;&#36890;&#24120;&#31639;&#26415;&#25552;&#21319;&#21518;&#65289;&#30340;&#20056;&#27861;&#65292;&#38500;&#20102;</p>
<ul>
<li>&#33509;&#25805;&#20316;&#25968;&#20043;&#19968;&#20026; NaN &#65292;&#21017;&#32467;&#26524;&#20026; NaN</li>
<li>&#26080;&#31351;&#22823;&#20056;&#38646;&#32473;&#20986; NaN &#24182;&#24341;&#21457; <span class="t-lc"><a href="c-numeric-fenv-FE_exceptions.html">FE_INVALID</a></span></li>
<li>&#26080;&#31351;&#22823;&#20056;&#38750;&#38646;&#32473;&#20986;&#26080;&#31351;&#22823;&#65288;&#21363;&#20351;&#23545;&#20110;&#22797;&#21442;&#25968;&#65289;</li>
</ul>
<p>&#22240;&#20026; C &#20013;&#65292;&#20219;&#20309;&#24102;&#33267;&#23569;&#19968;&#20010;&#26080;&#31351;&#22823;&#37096;&#20998;&#30340;<a href="c-language-arithmetic_types.html">&#22797;&#25968;&#20540;</a>&#20026;&#26080;&#31351;&#22823;&#65292;&#21363;&#20351;&#21478;&#19968;&#37096;&#20998;&#20026; NaN &#65292;&#25925;&#36890;&#24120;&#31639;&#26415;&#35268;&#21017;&#19981;&#24212;&#29992;&#20110;&#22797;&#22797;&#20056;&#27861;&#12290;&#20854;&#20182;&#28014;&#28857;&#25805;&#20316;&#25968;&#30340;&#32452;&#21512;&#36981;&#24490;&#19979;&#34920;&#65306;</p>
<table class="wikitable" style="text-align:center; font-size:85%; max-width:90em;">
<tr>
<th>*</th>
<th>u</th>
<th>iv</th>
<th>u + iv</th>
</tr>
<tr>
<th>x</th>
<td>xu</td>
<td>i(xv)</td>
<td>(xu) + i(xv)</td>
</tr>
<tr>
<th>iy</th>
<td>i(yu)</td>
<td>&minus;yv</td>
<td>(&minus;yv) + i(yu)</td>
</tr>
<tr>
<th>x + iy</th>
<td>(xu) + i(yu)</td>
<td>(&minus;yv) + i(xv)</td>
<td><i>special rules</i></td>
</tr>
</table>
<p>&#22312;&#26080;&#31351;&#22823;&#22788;&#29702;&#22806;&#65292;&#19981;&#20801;&#35768;&#22797;&#25968;&#20056;&#27861;&#19978;&#28322;&#20013;&#38388;&#32467;&#26524;&#65292;&#38500;&#20102;&#22312;&#35774;&#32622; <a href="c-preprocessor-impl.html"><tt>#pragma STDC CX_LIMITED_RANGE</tt></a> &#20026; <code>ON</code> &#26102;&#65292;&#35813;&#24773;&#20917;&#19979;&#21487;&#20197;&#22914;&#21516; <span class="texhtml" style="white-space: nowrap;">(x+iy)&times;(u+iv) = (xu-yv)+i(yu+xv)</span> &#19968;&#33324;&#35745;&#31639;&#20540;&#65292;&#22240;&#20026;&#20551;&#23450;&#20102;&#31243;&#24207;&#21592;&#36127;&#36131;&#38480;&#21046;&#25805;&#20316;&#25968;&#30340;&#33539;&#22260;&#24182;&#22788;&#29702;&#26080;&#31351;&#22823;&#12290;</p>
<p>&#34429;&#28982;&#19981;&#20801;&#35768;&#36807;&#24230;&#30340;&#19978;&#28322;&#65292;&#22797;&#25968;&#20056;&#27861;&#21487;&#33021;&#24341;&#21457;&#34394;&#20551;&#30340;&#28014;&#28857;&#24322;&#24120;&#65288;&#21542;&#21017;&#23454;&#29616;&#19981;&#19978;&#28322;&#29256;&#26412;&#22256;&#38590;&#21040;&#36817;&#20046;&#19981;&#21487;&#33021;&#65289;&#12290;</p>
<div class="t-example">
<div class="t-example-live-link"></div>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="c source-c">
<pre class="de1"><span class="co2">#include&lt;stdio.h&gt;</span>
<span class="co2">#include &lt;stdio.h&gt;</span>
<span class="co2">#include &lt;complex.h&gt;</span>
<span class="co2">#include &lt;math.h&gt;</span>
<span class="kw4">int</span> main<span class="br0">(</span><span class="kw4">void</span><span class="br0">)</span>
<span class="br0">{</span>
<span class="co1">// TODO &#20174; C++ &#37319;&#21462;&#19968;&#20123;&#26356;&#31616;&#21333;&#30340;&#24773;&#20917;</span>
<span class="kw4">double</span> <a href="c-numeric-complex-complex.html"><span class="kw743">complex</span></a> z <span class="sy1">=</span> <span class="br0">(</span><span class="nu0">1</span> <span class="sy2">+</span> <span class="nu0">0</span><span class="sy2">*</span>I<span class="br0">)</span> <span class="sy2">*</span> <span class="br0">(</span>INFINITY <span class="sy2">+</span> I<span class="sy2">*</span>INFINITY<span class="br0">)</span><span class="sy4">;</span>
<span class="co1">// &#25945;&#31185;&#20070;&#20844;&#24335;&#20250;&#32473;&#20986;</span>
<span class="co1">// (1+i0)(&infin;+i&infin;) &rArr; (1&times;&infin; &ndash; 0&times;&infin;) + i(0&times;&infin;+1&times;&infin;) &rArr; NaN + I*NaN</span>
<span class="co1">// &#20294; C &#32473;&#20986;&#22797;&#26080;&#31351;&#22823;</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;%f + i*%f<span class="es1">\n</span>&quot;</span>, <a href="c-numeric-complex-creal.html"><span class="kw754">creal</span></a><span class="br0">(</span>z<span class="br0">)</span>, <a href="c-numeric-complex-cimag.html"><span class="kw751">cimag</span></a><span class="br0">(</span>z<span class="br0">)</span><span class="br0">)</span><span class="sy4">;</span>
<span class="co1">// &#25945;&#31185;&#20070;&#20844;&#24335;&#20250;&#32473;&#20986;</span>
<span class="co1">// cexp(&infin;+iNaN) &rArr; exp(&infin;)&times;(cis(NaN)) &rArr; NaN + I*NaN</span>
<span class="co1">// &#20294; C &#32473;&#20986; &plusmn;&infin;+i*nan</span>
<span class="kw4">double</span> <a href="c-numeric-complex-complex.html"><span class="kw743">complex</span></a> y <span class="sy1">=</span> <a href="c-numeric-complex-cexp.html"><span class="kw769">cexp</span></a><span class="br0">(</span>INFINITY <span class="sy2">+</span> I<span class="sy2">*</span>NAN<span class="br0">)</span><span class="sy4">;</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;%f + i*%f<span class="es1">\n</span>&quot;</span>, <a href="c-numeric-complex-creal.html"><span class="kw754">creal</span></a><span class="br0">(</span>y<span class="br0">)</span>, <a href="c-numeric-complex-cimag.html"><span class="kw751">cimag</span></a><span class="br0">(</span>y<span class="br0">)</span><span class="br0">)</span><span class="sy4">;</span>
<span class="br0">}</span></pre></div>
</div>
<p>&#21487;&#33021;&#30340;&#36755;&#20986;&#65306;</p>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="text source-text">
<pre class="de1">inf + i*inf
inf + i*nan</pre></div>
</div>
</div>
<h4><span class="mw-headline" id=".E9.99.A4.E6.B3.95">&#38500;&#27861;</span></h4>
<p>&#20108;&#20803;&#36816;&#31639;&#31526; / &#36981;&#24490;&#36890;&#24120;&#30340;&#31639;&#26415;&#23450;&#20041;&#65292;&#23558;&#31532;&#19968;&#25805;&#20316;&#25968;&#38500;&#20197;&#31532;&#20108;&#25805;&#20316;&#25968;&#65288;&#22312;&#36890;&#24120;&#31639;&#26415;&#36716;&#25442;&#21518;&#65289;&#65292;&#38500;&#20102;</p>
<ul>
<li>&#36890;&#24120;&#31639;&#26415;&#25552;&#21319;&#21518;&#30340;&#31867;&#22411;&#20026;&#25972;&#25968;&#31867;&#22411;&#26102;&#65292;&#32467;&#26524;&#20026;&#20195;&#25968;&#21830;&#65288;&#38750;&#20998;&#25968;&#65289;&#65292;<span class="t-rev-inl t-until-c99"><span>&#20197;&#23454;&#29616;&#23450;&#20041;&#26041;&#21521;&#21462;&#25972;</span> <span><span class="t-mark-rev t-until-c99">(C99 &#21069;)</span></span></span><span class="t-rev-inl t-since-c99"><span>&#21521;&#38646;&#25130;&#26029;</span> <span><span class="t-mark-rev t-since-c99">(C99 &#36215;)</span></span></span></li>
<li>&#33509;&#25805;&#20316;&#25968;&#20043;&#19968;&#20026; NaN &#65292;&#21017;&#32467;&#26524;&#20026; NaN</li>
<li>&#33509;&#31532;&#19968;&#25805;&#20316;&#25968;&#20026;&#22797;&#26080;&#31351;&#22823;&#65292;&#32780;&#31532;&#20108;&#25805;&#20316;&#25968;&#20026;&#26377;&#38480;&#65292;&#21017; / &#36816;&#31639;&#31526;&#30340;&#32467;&#26524;&#20026;&#22797;&#26080;&#31351;&#22823;</li>
<li>&#33509;&#31532;&#19968;&#25805;&#20316;&#25968;&#20026;&#26377;&#38480;&#32780;&#31532;&#20108;&#25805;&#20316;&#25968;&#20026;&#22797;&#26080;&#31351;&#22823;&#65292;&#21017; / &#36816;&#31639;&#31526;&#30340;&#32467;&#26524;&#20026;&#38646;</li>
</ul>
<p>&#22240;&#20026; C &#20013;&#65292;&#20219;&#20309;&#24102;&#33267;&#23569;&#19968;&#20010;&#26080;&#31351;&#22823;&#37096;&#20998;&#30340;<a href="c-language-arithmetic_types.html">&#22797;&#25968;&#20540;</a>&#20026;&#26080;&#31351;&#22823;&#65292;&#21363;&#20351;&#21478;&#19968;&#37096;&#20998;&#20026; NaN &#65292;&#25925;&#36890;&#24120;&#31639;&#26415;&#35268;&#21017;&#19981;&#24212;&#29992;&#20110;&#22797;&#22797;&#38500;&#27861;&#12290;&#20854;&#20182;&#28014;&#28857;&#25805;&#20316;&#25968;&#30340;&#32452;&#21512;&#36981;&#24490;&#19979;&#34920;&#65306;</p>
<table class="wikitable" style="text-align:center; font-size:85%; max-width:90em;">
<tr>
<th>/</th>
<th>u</th>
<th>iv</th>
</tr>
<tr>
<th>x</th>
<td>x/u</td>
<td>i(&minus;x/v)</td>
</tr>
<tr>
<th>iy</th>
<td>i(y/u)</td>
<td>y/v</td>
</tr>
<tr>
<th>x + iy</th>
<td>(x/u) + i(y/u)</td>
<td>(y/v) + i(&minus;x/v)</td>
</tr>
</table>
<p>&#22312;&#26080;&#31351;&#22823;&#22788;&#29702;&#22806;&#65292;&#19981;&#20801;&#35768;&#22797;&#25968;&#38500;&#27861;&#19978;&#28322;&#20013;&#38388;&#32467;&#26524;&#65292;&#38500;&#20102;&#22312;&#35774;&#32622; <a href="c-preprocessor-impl.html"><tt>#pragma STDC CX_LIMITED_RANGE</tt></a> &#20026; <code>ON</code> &#26102;&#65292;&#35813;&#24773;&#20917;&#19979;&#21487;&#20197;&#22914;&#21516; <span class="texhtml" style="white-space: nowrap;">(x+iy)/(u+iv) = [(xu+yv)+i(yu-xv)]/(u<span class="t-su">2<br /></span>+v<span class="t-su">2<br /></span>)</span> &#19968;&#33324;&#35745;&#31639;&#20540;&#65292;&#22240;&#20026;&#20551;&#23450;&#20102;&#31243;&#24207;&#21592;&#36127;&#36131;&#38480;&#21046;&#25805;&#20316;&#25968;&#30340;&#33539;&#22260;&#24182;&#22788;&#29702;&#26080;&#31351;&#22823;&#12290;</p>
<p>&#34429;&#28982;&#19981;&#20801;&#35768;&#36807;&#24230;&#30340;&#19978;&#28322;&#65292;&#22797;&#25968;&#38500;&#27861;&#21487;&#33021;&#24341;&#21457;&#34394;&#20551;&#30340;&#28014;&#28857;&#24322;&#24120;&#65288;&#21542;&#21017;&#23454;&#29616;&#19981;&#19978;&#28322;&#29256;&#26412;&#22256;&#38590;&#21040;&#36817;&#20046;&#19981;&#21487;&#33021;&#65289;&#12290;</p>
<p>&#33509;&#31532;&#20108;&#25805;&#20316;&#25968;&#20026;&#38646;&#65292;&#21017;&#34892;&#20026;&#26410;&#23450;&#20041;&#65292;&#38500;&#38750;&#25903;&#25345; IEE &#28014;&#28857;&#31639;&#26415;&#65292;&#19988;&#21457;&#29983;&#28014;&#28857;&#38500;&#27861;&#65292;&#21017;</p>
<ul>
<li>&#38750;&#38646;&#25968;&#38500;&#20197; &plusmn;0.0 &#32473;&#20986;&#31526;&#21495;&#27491;&#30830;&#30340;&#26080;&#31351;&#22823;&#24182;&#24341;&#21457; <span class="t-lc"><a href="c-numeric-fenv-FE_exceptions.html">FE_DIVBYZERO</a></span></li>
<li>0.0 &#38500;&#20197; 0.0 &#32473;&#20986; NaN &#24182;&#24341;&#21457; <span class="t-lc"><a href="c-numeric-fenv-FE_exceptions.html">FE_INVALID</a></span></li>
</ul>
<h4><span class="mw-headline" id=".E4.BD.99.E6.95.B0">&#20313;&#25968;</span></h4>
<p>&#20108;&#20803;&#36816;&#31639;&#31526;&nbsp;% &#20135;&#20986;&#31532;&#19968;&#25805;&#20316;&#25968;&#38500;&#20197;&#31532;&#20108;&#25805;&#20316;&#25968;&#65288;&#22312;&#36890;&#24120;&#31639;&#26415;&#36716;&#25442;&#21518;&#65289;&#30340;&#20313;&#25968;&#12290;</p>
<p>&#20313;&#25968;&#30340;&#31526;&#21495;&#23450;&#20041;&#65292;&#20351;&#24471;&#33509;&#21830; <code>a/b</code> &#33021;&#20197;&#32467;&#26524;&#31867;&#22411;&#34920;&#31034;&#65292;&#21017; <span class="t-c"><span class="mw-geshi c source-c"><span class="br0">(</span>a<span class="sy2">/</span>b<span class="br0">)</span><span class="sy2">*</span>b <span class="sy2">+</span> a<span class="sy2">%</span>b <span class="sy1">==</span> a</span></span> &#12290;</p>
<p>&#33509;&#31532;&#20108;&#25805;&#20316;&#25968;&#20026;&#38646;&#65292;&#21017;&#34892;&#20026;&#26410;&#23450;&#20041;&#12290;</p>
<p>&#33509;&#21830; <code>a/b</code> &#19981;&#33021;&#20197;&#32467;&#26524;&#31867;&#22411;&#34920;&#31034;&#65292;&#21017; <code>a/b</code> &#21644; <code>a%b</code> &#30340;&#34892;&#20026;&#37117;&#26410;&#23450;&#20041;&#65288;&#36825;&#34920;&#26126; <span class="t-c"><span class="mw-geshi c source-c">INT_MIN<span class="sy2">%-</span><span class="nu0">1</span></span></span> &#22312;&#34917;&#30721;&#31995;&#32479;&#19978;&#26410;&#23450;&#20041;&#65289;&#12290;</p>
<p>&#27880;&#24847;&#65306;&#20313;&#25968;&#36816;&#31639;&#31526;&#19981;&#21487;&#29992;&#20110;&#28014;&#28857;&#31867;&#22411;&#19978;&#65292;&#24211;&#20989;&#25968; <span class="t-lc"><a href="c-numeric-math-fmod.html">fmod</a></span> &#25552;&#20379;&#35813;&#21151;&#33021;&#12290;</p>
<h3><span class="mw-headline" id=".E9.80.90.E4.BD.8D.E9.80.BB.E8.BE.91">&#36880;&#20301;&#36923;&#36753;</span></h3>
<p>&#36880;&#20301;&#36923;&#36753;&#36816;&#31639;&#31526;&#25317;&#26377;&#24418;&#24335;</p>
<table class="t-sdsc-begin">
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><code><b>~</b></code> <span class="t-spar">rhs</span></td>
<td>(1)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>&amp;</b></code> <span class="t-spar">rhs</span></td>
<td>(2)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>|</b></code> <span class="t-spar">rhs</span></td>
<td>(3)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>^</b></code> <span class="t-spar">rhs</span></td>
<td>(4)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
</table>
<div class="t-li1"><span class="t-li">1)</span> &#36880;&#20301;&#38750;</div>
<div class="t-li1"><span class="t-li">2)</span> &#36880;&#20301;&#19982;</div>
<div class="t-li1"><span class="t-li">3)</span> &#36880;&#20301;&#25110;</div>
<div class="t-li1"><span class="t-li">4)</span> &#36880;&#20301;&#24322;&#25110;
<p>&#20854;&#20013;</p>
<table class="t-par-begin">
<tr class="t-par">
<td><span class="t-spar">lhs</span>, <span class="t-spar">rhs</span></td>
<td>-</td>
<td>&#25972;&#25968;&#31867;&#22411;&#34920;&#36798;&#24335;</td>
</tr>
</table>
</div>
<p>&#39318;&#20808;&#65292;&#36816;&#31639;&#31526; &amp; &#12289; ^ &#21644; | &#22312;&#20004;&#20010;&#25805;&#20316;&#25968;&#19978;&#36827;&#34892;<a href="c-language-conversion.html#.E9.80.9A.E5.B8.B8.E7.AE.97.E6.9C.AF.E8.BD.AC.E6.8D.A2">&#36890;&#24120;&#31639;&#26415;&#36716;&#25442;</a>&#65292;&#32780;&#36816;&#31639;&#31526; ~ &#22312;&#20854;&#21807;&#19968;&#30340;&#25805;&#20316;&#25968;&#19978;&#36827;&#34892;<a href="c-language-conversion.html#.E6.95.B4.E6.95.B0.E6.8F.90.E5.8D.87">&#25972;&#25968;&#25552;&#21319;</a>&#12290;</p>
<p>&#28982;&#21518;&#65292;&#36880;&#20301;&#24212;&#29992;&#23545;&#24212;&#30340;&#36923;&#36753;&#36816;&#31639;&#31526;&#65307;&#21363;&#25353;&#29031;&#24212;&#29992;&#21040;&#25805;&#20316;&#25968;&#30340;&#27599;&#20301;&#30340;&#36923;&#36753;&#36816;&#31639;&#65288;&#25110;&#12289;&#19982;&#12289;&#38750;&#12289;&#24322;&#25110;&#65289;&#65292;&#35774;&#32622;&#25110;&#28165;&#38500;&#32467;&#26524;&#30340;&#23545;&#24212;&#20301;&#12290;</p>
<p>&#27880;&#24847;&#65306;&#20301;&#36816;&#31639;&#31526;&#24120;&#29992;&#20110;&#25805;&#20316;&#20301;&#38598;&#21644;&#20301;&#25513;&#30721;&#12290;</p>
<p>&#27880;&#24847;&#65306;&#23545;&#20110;&#26080;&#31526;&#21495;&#31867;&#22411;&#65288;&#25552;&#21319;&#21518;&#65289;&#65292;&#34920;&#36798;&#24335; ~E &#31561;&#20215;&#20110;&#32467;&#26524;&#31867;&#22411;&#30340;&#26368;&#22823;&#21487;&#34920;&#31034;&#20540;&#20943; E &#30340;&#21407;&#20540;&#12290;</p>
<div class="t-example">
<div class="t-example-live-link"></div>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="c source-c">
<pre class="de1"><span class="co2">#include &lt;stdio.h&gt;</span>
<span class="co2">#include &lt;stdint.h&gt;</span>
<span class="kw4">int</span> main<span class="br0">(</span><span class="kw4">void</span><span class="br0">)</span>
<span class="br0">{</span>
<a href="c-types-integer.html"><span class="kw121">uint16_t</span></a> mask <span class="sy1">=</span> <span class="nu12">0x00f0</span><span class="sy4">;</span>
<a href="c-types-integer.html"><span class="kw122">uint32_t</span></a> a <span class="sy1">=</span> <span class="nu12">0x12345678</span><span class="sy4">;</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;Value: %#x mask: %#x<span class="es1">\n</span>&quot;</span>
<span class="st0">&quot;Setting bits: %#x<span class="es1">\n</span>&quot;</span>
<span class="st0">&quot;Clearing bits: %#x<span class="es1">\n</span>&quot;</span>
<span class="st0">&quot;Selecting bits: %#x<span class="es1">\n</span>&quot;</span>,
a,mask,<span class="br0">(</span>a<span class="sy3">|</span>mask<span class="br0">)</span>,<span class="br0">(</span>a<span class="sy3">&amp;</span>~mask<span class="br0">)</span>,<span class="br0">(</span>a<span class="sy3">&amp;</span>mask<span class="br0">)</span><span class="br0">)</span><span class="sy4">;</span>
<span class="br0">}</span></pre></div>
</div>
<p>&#21487;&#33021;&#30340;&#36755;&#20986;&#65306;</p>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="text source-text">
<pre class="de1">Value: 0x12345678 mask: 0xf0
Setting bits: 0x123456f8
Clearing bits: 0x12345608
Selecting bits: 0x70</pre></div>
</div>
</div>
<h3><span class="mw-headline" id=".E4.BD.8D.E7.A7.BB.E8.BF.90.E7.AE.97.E7.AC.A6">&#20301;&#31227;&#36816;&#31639;&#31526;</span></h3>
<p>&#20301;&#31227;&#36816;&#31639;&#31526;&#34920;&#36798;&#24335;&#25317;&#26377;&#24418;&#24335;</p>
<table class="t-sdsc-begin">
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>&lt;&lt;</b></code> <span class="t-spar">rhs</span></td>
<td>(1)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">lhs</span> <code><b>&gt;&gt;</b></code> <span class="t-spar">rhs</span></td>
<td>(2)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
</table>
<div class="t-li1"><span class="t-li">1)</span> <span class="t-spar">lhs</span> &#24038;&#31227; <span class="t-spar">rhs</span> &#20301;</div>
<div class="t-li1"><span class="t-li">2)</span> <span class="t-spar">lhs</span> &#21491;&#31227; <span class="t-spar">rhs</span> &#20301;
<p>&#20854;&#20013;</p>
<table class="t-par-begin">
<tr class="t-par">
<td><span class="t-spar">lhs</span>, <span class="t-spar">rhs</span></td>
<td>-</td>
<td>&#25972;&#25968;&#31867;&#22411;&#34920;&#36798;&#24335;</td>
</tr>
</table>
</div>
<p>&#39318;&#20808;&#65292;&#22312;&#27599;&#20010;&#25805;&#20316;&#25968;&#19978;&#29420;&#33258;&#36827;&#34892;<a href="c-language-conversion.html">&#25972;&#25968;&#25552;&#21319;</a>&#65288;&#27880;&#24847;&#65306;&#36825;&#19981;&#21516;&#20110;&#20854;&#20182;&#20108;&#20803;&#31639;&#26415;&#36816;&#31639;&#31526;&#65292;&#23427;&#20204;&#20840;&#37117;&#36827;&#34892;&#36890;&#24120;&#31639;&#26415;&#36716;&#25442;&#65289;&#12290;&#32467;&#26524;&#31867;&#22411;&#20026; <span class="t-spar">lhs</span> &#22312;&#25552;&#21319;&#21518;&#30340;&#31867;&#22411;&#12290;</p>
<p>&#23545;&#20110;&#26080;&#31526;&#21495; <span class="t-spar">lhs</span> &#65292; <code>LHS &lt;&lt; RHS</code> &#30340;&#20540;&#26159; <span class="texhtml" style="white-space: nowrap;">LHS * 2<span class="t-su">RHS<br /></span></span> &#20197;&#36820;&#22238;&#31867;&#22411;&#26368;&#22823;&#20540;&#21152; 1 &#21462;&#27169;&#65288;&#21363;&#36827;&#34892;&#36880;&#20301;&#24038;&#31227;&#65292;&#24182;&#33293;&#24323;&#31227;&#20986;&#30446;&#26631;&#31867;&#22411;&#30340;&#20301;&#65289;&#12290;&#23545;&#20110;&#26377;&#38750;&#36127;&#20540;&#30340;&#26377;&#31526;&#21495; <span class="t-spar">lhs</span> &#65292;&#33509;&#20540;&#33021;&#20197; <span class="t-spar">lhs</span> &#30340;&#25552;&#21319;&#21518;&#31867;&#22411;&#34920;&#31034;&#65292;&#21017; <code>LHS &lt;&lt; RHS</code> &#30340;&#20540;&#26159; <span class="texhtml" style="white-space: nowrap;">LHS * 2<span class="t-su">RHS<br /></span></span> &#65292;&#21542;&#21017;&#34892;&#20026;&#26410;&#23450;&#20041;&#12290;</p>
<p>&#23545;&#20110;&#26080;&#31526;&#21495; <span class="t-spar">lhs</span> &#21644;&#26377;&#38750;&#36127;&#20540;&#30340;&#26377;&#31526;&#21495; <span class="t-spar">lhs</span> &#65292; <code>LHS &gt;&gt; RHS</code> &#30340;&#20540;&#26159; <span class="texhtml" style="white-space: nowrap;">LHS / 2<span class="t-su">RHS<br /></span></span> &#30340;&#25972;&#25968;&#37096;&#20998;&#12290;&#23545;&#20110;&#36127;&#30340; <code>LHS</code> &#65292; <code>LHS &gt;&gt; RHS</code> &#30340;&#20540;&#26159;&#23454;&#29616;&#23450;&#20041;&#30340;&#65292;&#22823;&#22810;&#25968;&#23454;&#29616;&#20013;&#65292;&#36825;&#36827;&#34892;&#31639;&#26415;&#21491;&#31227;&#65288;&#25925;&#32467;&#26524;&#20173;&#20026;&#36127;&#65289;&#12290;&#20174;&#32780;&#22312;&#22823;&#22810;&#25968;&#23454;&#29616;&#20013;&#65292;&#21491;&#31227;&#26377;&#31526;&#21495;&#30340; <code>LHS</code> &#20250;&#20197;&#21407;&#31526;&#21495;&#20301;&#22635;&#20805;&#26032;&#30340;&#39640;&#20301;&#65288;&#21363;&#33509;&#21407;&#25968;&#38750;&#36127;&#21017;&#20026; 0 &#65292;&#32780;&#33509;&#21407;&#25968;&#20026;&#36127;&#21017;&#20026; 1 &#65289;&#12290;</p>
<p>&#20219;&#20309;&#24773;&#20917;&#19979;&#65292;&#33509; <span class="t-spar">rhs</span> &#20026;&#36127;&#25110;&#22823;&#20110;&#25110;&#31561;&#20110;&#25552;&#21319;&#21518;&#30340; <span class="t-spar">lhs</span> &#20013;&#30340;&#20301;&#25968;&#65292;&#21017;&#34892;&#20026;&#26410;&#23450;&#20041;&#12290;</p>
<div class="t-example">
<div class="t-example-live-link"></div>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="c source-c">
<pre class="de1"><span class="co2">#include &lt;stdio.h&gt;</span>
<span class="kw2">enum</span> <span class="br0">{</span>ONE<span class="sy1">=</span><span class="nu0">1</span>, TWO<span class="sy1">=</span><span class="nu0">2</span><span class="br0">}</span><span class="sy4">;</span>
<span class="kw4">int</span> main<span class="br0">(</span><span class="kw4">void</span><span class="br0">)</span>
<span class="br0">{</span>
<span class="kw4">char</span> c <span class="sy1">=</span> <span class="nu12">0x10</span><span class="sy4">;</span>
<span class="kw4">unsigned</span> <span class="kw4">long</span> <span class="kw4">long</span> ulong_num <span class="sy1">=</span> <span class="nu12">0x123</span><span class="sy4">;</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;0x123 &lt;&lt; 1 = %#llx<span class="es1">\n</span>&quot;</span>
<span class="st0">&quot;0x123 &lt;&lt; 63 = %#llx<span class="es1">\n</span>&quot;</span> <span class="co1">// &#23545;&#26080;&#31526;&#21495;&#25968;&#65292;&#28322;&#20986;&#25130;&#26029;&#39640;&#20301;</span>
<span class="st0">&quot;0x10 &lt;&lt; 10 = %#x<span class="es1">\n</span>&quot;</span>, <span class="co1">// char &#34987;&#25552;&#21319;&#21040; int</span>
ulong_num <span class="sy1">&lt;&lt;</span> <span class="nu0">1</span>, ulong_num <span class="sy1">&lt;&lt;</span> <span class="nu0">63</span>, c <span class="sy1">&lt;&lt;</span> <span class="nu0">10</span><span class="br0">)</span><span class="sy4">;</span>
<span class="kw4">long</span> <span class="kw4">long</span> long_num <span class="sy1">=</span> <span class="sy2">-</span><span class="nu0">1000</span><span class="sy4">;</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;-1000 &gt;&gt; 1 = %lld<span class="es1">\n</span>&quot;</span>, long_num <span class="sy1">&gt;&gt;</span> ONE<span class="br0">)</span><span class="sy4">;</span> <span class="co1">// &#23454;&#29616;&#23450;&#20041;</span>
<span class="br0">}</span></pre></div>
</div>
<p>&#21487;&#33021;&#30340;&#36755;&#20986;&#65306;</p>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="text source-text">
<pre class="de1">0x123 &lt;&lt; 1 = 0x246
0x123 &lt;&lt; 63 = 0x8000000000000000
0x10 &lt;&lt; 10 = 0x4000
-1000 &gt;&gt; 1 = -500</pre></div>
</div>
</div>
<h3><span class="mw-headline" id=".E5.BC.95.E7.94.A8">&#24341;&#29992;</span></h3>
<div class="t-ref-std-11">
<ul>
<li>C11 &#26631;&#20934;&#65288;ISO/IEC 9899:2011&#65289;&#65306;</li>
</ul>
<dl>
<dd>
<ul>
<li>6.5.3.3 Unary arithmetic operators (p: 89)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.5 Multiplicative operators (p: 92)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.6 Additive operators (p: 92-94)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.7 Bitwise shift operators (p: 94-95)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.10 Bitwise AND operator (p: 97)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.11 Bitwise exclusive OR operator (p: 98)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.12 Bitwise inclusive OR operator (p: 98)</li>
</ul>
</dd>
</dl>
<div class="t-ref-std-c99">
<ul>
<li>C99 &#26631;&#20934;&#65288;ISO/IEC 9899:1999&#65289;&#65306;</li>
</ul>
<dl>
<dd>
<ul>
<li>6.5.3.3 Unary arithmetic operators (p: 79)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.5 Multiplicative operators (p: 82)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.6 Additive operators (p: 82-84)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.7 Bitwise shift operators (p: 84-85)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.10 Bitwise AND operator (p: 87)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.11 Bitwise exclusive OR operator (p: 88)</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>6.5.12 Bitwise inclusive OR operator (p: 88)</li>
</ul>
</dd>
</dl>
<div class="t-ref-std-c89">
<ul>
<li>C89/C90 &#26631;&#20934;&#65288;ISO/IEC 9899:1990&#65289;&#65306;</li>
</ul>
<dl>
<dd>
<ul>
<li>3.3.3.3 Unary arithmetic operators</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>3.3.5 Multiplicative operators</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>3.3.6 Additive operators</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>3.3.7 Bitwise shift operators</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>3.3.10 Bitwise AND operator</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>3.3.11 Bitwise exclusive OR operator</li>
</ul>
</dd>
</dl>
<dl>
<dd>
<ul>
<li>3.3.12 Bitwise inclusive OR operator</li>
</ul>
</dd>
</dl>
</div>
<h3><span class="mw-headline" id=".E5.8F.82.E9.98.85">&#21442;&#38405;</span></h3>
<p><a href="c-language-operator_precedence.html">&#36816;&#31639;&#31526;&#20248;&#20808;&#32423;</a></p>
<table class="wikitable">
<tr style="text-align:center">
<th colspan="7">&#24120;&#29992;&#36816;&#31639;&#31526;</th>
</tr>
<tr style="text-align:center">
<td><a href="c-language-operator_assignment.html">&#36171;&#20540;</a></td>
<td><a href="c-language-operator_incdec.html">&#33258;&#22686;<br />
&#33258;&#20943;</a></td>
<td><strong class="selflink">&#31639;&#26415;</strong></td>
<td><a href="c-language-operator_logical.html">&#36923;&#36753;</a></td>
<td><a href="c-language-operator_comparison.html">&#27604;&#36739;</a></td>
<td><a href="c-language-operator_member_access.html">&#25104;&#21592;<br />
&#35775;&#38382;</a></td>
<td><a href="c-language-operator_other.html">&#20854;&#20182;</a></td>
</tr>
<tr style="text-align:center">
<td>
<p><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy1">=</span> b<br />
a <span class="sy2">+</span><span class="sy1">=</span> b<br />
a <span class="sy2">-</span><span class="sy1">=</span> b<br />
a <span class="sy2">*</span><span class="sy1">=</span> b<br />
a <span class="sy2">/</span><span class="sy1">=</span> b<br />
a <span class="sy2">%</span><span class="sy1">=</span> b<br />
a <span class="sy3">&amp;</span><span class="sy1">=</span> b<br />
a <span class="sy3">|</span><span class="sy1">=</span> b<br />
a <span class="sy3">^</span><span class="sy1">=</span> b<br />
a <span class="sy1">&lt;&lt;=</span> b<br />
a <span class="sy1">&gt;&gt;=</span> b</span></span></p>
</td>
<td>
<p><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">++</span>a<br />
<span class="sy2">--</span>a<br />
a<span class="sy2">++</span><br />
a<span class="sy2">--</span></span></span></p>
</td>
<td>
<p><span class="t-c"><span class="mw-geshi c source-c"><span class="sy2">+</span>a<br />
<span class="sy2">-</span>a<br />
a <span class="sy2">+</span> b<br />
a <span class="sy2">-</span> b<br />
a <span class="sy2">*</span> b<br />
a <span class="sy2">/</span> b<br />
a <span class="sy2">%</span> b<br />
~a<br />
a <span class="sy3">&amp;</span> b<br />
a <span class="sy3">|</span> b<br />
a <span class="sy3">^</span> b<br />
a <span class="sy1">&lt;&lt;</span> b<br />
a <span class="sy1">&gt;&gt;</span> b</span></span></p>
</td>
<td>
<p><span class="t-c"><span class="mw-geshi c source-c"><span class="sy3">!</span>a<br />
a <span class="sy3">&amp;&amp;</span> b<br />
a <span class="sy3">||</span> b</span></span></p>
</td>
<td>
<p><span class="t-c"><span class="mw-geshi c source-c">a <span class="sy1">==</span> b<br />
a <span class="sy3">!</span><span class="sy1">=</span> b<br />
a <span class="sy1">&lt;</span> b<br />
a <span class="sy1">&gt;</span> b<br />
a <span class="sy1">&lt;=</span> b<br />
a <span class="sy1">&gt;=</span> b</span></span></p>
</td>
<td>
<p><span class="t-c"><span class="mw-geshi c source-c">a<span class="br0">[</span>b<span class="br0">]</span><br />
<span class="sy2">*</span>a<br />
<span class="sy3">&amp;</span>a<br />
a<span class="sy2">-</span><span class="sy1">&gt;</span>b<br />
a.<span class="me1">b</span></span></span></p>
</td>
<td>
<p><span class="t-c"><span class="mw-geshi c source-c">a<span class="br0">(</span>...<span class="br0">)</span><br />
a, b<br />
<span class="br0">(</span>type<span class="br0">)</span> a<br />
<span class="sy4">?</span> <span class="sy4">:</span><br />
<span class="kw4">sizeof</span><br />
_Alignof</span></span> <span class="t-mark-rev t-since-c11">(C11 &#36215;)</span></p>
</td>
</tr>
</table>
<table class="t-dsc-begin"></table>
</div>
</div>
</div>
<div class="visualClear"></div>
</div>
</div>
</div>
</body>
</html>