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

187 lines
12 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>if &#35821;&#21477;</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_if skin-cppreference2 action-view cpp-navbar">
<div id="cpp-content-base">
<div id="content"><a id="top"></a>
<h1 id="firstHeading" class="firstHeading">if &#35821;&#21477;</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>&#26377;&#26465;&#20214;&#22320;&#25191;&#34892;&#20195;&#30721;&#12290;</p>
<p>&#29992;&#20110;&#20165;&#33509;&#26576;&#26465;&#20214;&#20026;&#30495;&#25165;&#25191;&#34892;&#20195;&#30721;&#30340;&#22330;&#21512;&#12290;</p>
<h3><span class="mw-headline" id=".E8.AF.AD.E6.B3.95">&#35821;&#27861;</span></h3>
<table class="t-sdsc-begin">
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
<tr class="t-sdsc">
<td><span class="t-spar">&#23646;&#24615;&#35828;&#26126;&#31526;&#24207;&#21015;</span><span class="t-mark">(&#21487;&#36873;)</span> <code><b>if (</b></code> <span class="t-spar">&#34920;&#36798;&#24335;</span> <code><b>)</b></code> <span class="t-spar">&#35821;&#21477;&#30495;</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">&#23646;&#24615;&#35828;&#26126;&#31526;&#24207;&#21015;</span><span class="t-mark">(&#21487;&#36873;)</span> <code><b>if (</b></code> <span class="t-spar">&#34920;&#36798;&#24335;</span> <code><b>)</b></code> <span class="t-spar">&#35821;&#21477;&#30495;</span> <code><b>else</b></code> <span class="t-spar">&#35821;&#21477;&#20551;</span></td>
<td>(2)</td>
<td class="t-sdsc-nopad"></td>
</tr>
<tr>
<td colspan="10" class="t-sdsc-sep"></td>
</tr>
</table>
<table class="t-par-begin">
<tr class="t-par">
<td><span class="t-spar">&#23646;&#24615;&#35828;&#26126;&#31526;&#24207;&#21015;</span></td>
<td>-</td>
<td><span class="t-mark-rev t-since-c23">(C23)</span>&#21487;&#36873;&#30340;<a href="c-language-attributes.html">&#23646;&#24615;</a>&#21015;&#34920;&#65292;&#24212;&#29992;&#21040; <code>if</code> &#35821;&#21477;</td>
</tr>
<tr class="t-par">
<td><span class="t-spar">&#34920;&#36798;&#24335;</span></td>
<td>-</td>
<td>&#20219;&#20309;&#26631;&#37327;&#31867;&#22411;<a href="c-language-expressions.html">&#34920;&#36798;&#24335;</a></td>
</tr>
<tr class="t-par">
<td><span class="t-spar">&#35821;&#21477;&#30495;</span></td>
<td>-</td>
<td>&#20219;&#20309;<a href="c-language-statements.html">&#35821;&#21477;</a>&#65288;&#24120;&#20026;&#22797;&#21512;&#35821;&#21477;&#65289;&#65292;&#33509; <span class="t-spar">&#34920;&#36798;&#24335;</span> &#27604;&#36739;&#19981;&#31561;&#20110; <span class="t-c"><span class="mw-geshi c source-c">&#8203;<span class="nu0">0</span>&#8203;</span></span> &#21017;&#25191;&#34892;</td>
</tr>
<tr class="t-par">
<td><span class="t-spar">&#35821;&#21477;&#20551;</span></td>
<td>-</td>
<td>&#20219;&#20309;<a href="c-language-statements.html">&#35821;&#21477;</a>&#65288;&#24120;&#20026;&#22797;&#21512;&#35821;&#21477;&#65289;&#65292;&#33509; <span class="t-spar">&#34920;&#36798;&#24335;</span> &#27604;&#36739;&#31561;&#20110; <span class="t-c"><span class="mw-geshi c source-c">&#8203;<span class="nu0">0</span>&#8203;</span></span> &#21017;&#25191;&#34892;</td>
</tr>
</table>
<h3><span class="mw-headline" id=".E8.A7.A3.E9.87.8A">&#35299;&#37322;</span></h3>
<p><span class="t-spar">&#34920;&#36798;&#24335;</span> &#24517;&#39035;&#20026;&#20219;&#20309;<a href="c-language-types.html#.E7.B1.BB.E5.9E.8B.E7.BB.84.E5.88.AB">&#26631;&#37327;&#31867;&#22411;</a>&#30340;&#34920;&#36798;&#24335;&#12290;</p>
<p>&#33509; <span class="t-spar">&#34920;&#36798;&#24335;</span> &#19982;&#25972;&#25968;&#38646;&#27604;&#36739;&#19981;&#30456;&#31561;&#65292;&#21017;&#25191;&#34892; <span class="t-spar">&#35821;&#21477;&#30495;</span> &#12290;</p>
<p>&#24418;&#24335; <span class="t-v">(2)</span> &#20013;&#65292;&#33509; <span class="t-spar">&#34920;&#36798;&#24335;</span> &#19982;&#25972;&#25968;&#38646;&#27604;&#36739;&#30456;&#31561;&#65292;&#21017;&#25191;&#34892; <span class="t-spar">&#35821;&#21477;&#20551;</span> &#12290;</p>
<table class="t-rev-begin">
<tr class="t-rev t-since-c99">
<td>
<p>&#21516;&#25152;&#26377;&#36873;&#25321;&#21644;&#36845;&#20195;&#35821;&#21477;&#65292;&#25972;&#20010; if &#35821;&#21477;&#25317;&#26377;&#20854;&#33258;&#36523;&#30340;&#22359;&#20316;&#29992;&#22495;&#65306;</p>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="c source-c">
<pre class="de1"><span class="kw2">enum</span> <span class="br0">{</span>a, b<span class="br0">}</span><span class="sy4">;</span>
<span class="kw4">int</span> different<span class="br0">(</span><span class="kw4">void</span><span class="br0">)</span>
<span class="br0">{</span>
<span class="kw1">if</span> <span class="br0">(</span><span class="kw4">sizeof</span><span class="br0">(</span><span class="kw2">enum</span> <span class="br0">{</span>b, a<span class="br0">}</span><span class="br0">)</span> <span class="sy3">!</span><span class="sy1">=</span> <span class="kw4">sizeof</span><span class="br0">(</span><span class="kw4">int</span><span class="br0">)</span><span class="br0">)</span>
<span class="kw1">return</span> a<span class="sy4">;</span> <span class="co1">// a == 1</span>
<span class="kw1">return</span> b<span class="sy4">;</span> <span class="co1">// C 89&#20013; b == 0 &#65292; C99 &#20013; b == 1</span>
<span class="br0">}</span></pre></div>
</div>
</td>
<td><span class="t-mark-rev t-since-c99">(C99 &#36215;)</span></td>
</tr>
</table>
<h3><span class="mw-headline" id=".E6.B3.A8.E8.A7.A3">&#27880;&#35299;</span></h3>
<p><code>else</code> &#22987;&#32456;&#19982;&#26368;&#25509;&#36817;&#30340;&#21069;&#25509; <code>if</code> &#30456;&#20851;&#32852;&#65288;&#25442;&#35328;&#20043;&#65292;&#33509; <span class="t-spar">&#35821;&#21477;&#30495;</span> &#20063;&#26159; if &#35821;&#21477;&#65292;&#21017;&#20869;&#23618; if &#24517;&#39035;&#20063;&#21547;&#26377; <code>else</code> &#37096;&#20998;&#65289;&#65306;</p>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="c source-c">
<pre class="de1"><span class="kw4">int</span> j <span class="sy1">=</span> <span class="nu0">1</span><span class="sy4">;</span>
<span class="kw1">if</span> <span class="br0">(</span>i <span class="sy1">&gt;</span> <span class="nu0">1</span><span class="br0">)</span>
<span class="kw1">if</span><span class="br0">(</span>j <span class="sy1">&gt;</span> <span class="nu0">2</span><span class="br0">)</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;%d &gt; 1 and %d &gt; 2<span class="es1">\n</span>&quot;</span>, i, j<span class="br0">)</span><span class="sy4">;</span>
<span class="kw1">else</span> <span class="co1">// &#27492; else &#26159; if(j&gt;2) &#30340;&#19968;&#37096;&#20998;&#65292;&#19981;&#26159; if(i&gt;1) &#30340;&#37096;&#20998; </span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;%d &gt; 1 and %d &lt;= 2<span class="es1">\n</span>&quot;</span>, i, j<span class="br0">)</span><span class="sy4">;</span></pre></div>
</div>
<p>&#33509;&#36890;&#36807; <a href="c-language-goto.html">goto</a> &#36827;&#20837; <span class="t-spar">&#35821;&#21477;&#30495;</span> &#65292;&#21017;&#19981;&#25191;&#34892; <span class="t-spar">&#35821;&#21477;&#20551;</span> &#12290;</p>
<h3><span class="mw-headline" id=".E5.85.B3.E9.94.AE.E8.AF.8D">&#20851;&#38190;&#35789;</span></h3>
<p><a href="c-keyword-if.html"><tt>if</tt></a>, <a href="c-keyword-else.html"><tt>else</tt></a></p>
<h3><span class="mw-headline" id=".E7.A4.BA.E4.BE.8B">&#31034;&#20363;</span></h3>
<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="kw4">int</span> main<span class="br0">(</span><span class="kw4">void</span><span class="br0">)</span>
<span class="br0">{</span>
<span class="kw4">int</span> i <span class="sy1">=</span> <span class="nu0">2</span><span class="sy4">;</span>
<span class="kw1">if</span> <span class="br0">(</span>i <span class="sy1">&gt;</span> <span class="nu0">2</span><span class="br0">)</span> <span class="br0">{</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;first is true<span class="es1">\n</span>&quot;</span><span class="br0">)</span><span class="sy4">;</span>
<span class="br0">}</span> <span class="kw1">else</span> <span class="br0">{</span>
<a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;first is false<span class="es1">\n</span>&quot;</span><span class="br0">)</span><span class="sy4">;</span>
<span class="br0">}</span>
i <span class="sy1">=</span> <span class="nu0">3</span><span class="sy4">;</span>
<span class="kw1">if</span> <span class="br0">(</span>i <span class="sy1">==</span> <span class="nu0">3</span><span class="br0">)</span> <a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;i == 3<span class="es1">\n</span>&quot;</span><span class="br0">)</span><span class="sy4">;</span>
<span class="kw1">if</span> <span class="br0">(</span>i <span class="sy3">!</span><span class="sy1">=</span> <span class="nu0">3</span><span class="br0">)</span> <a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;i != 3 is true<span class="es1">\n</span>&quot;</span><span class="br0">)</span><span class="sy4">;</span>
<span class="kw1">else</span> <a href="c-io-fprintf.html"><span class="kw851">printf</span></a><span class="br0">(</span><span class="st0">&quot;i != 3 is false<span class="es1">\n</span>&quot;</span><span class="br0">)</span><span class="sy4">;</span>
<span class="br0">}</span></pre></div>
</div>
<p>&#36755;&#20986;&#65306;</p>
<div dir="ltr" class="mw-geshi" style="text-align: left;">
<div class="text source-text">
<pre class="de1">first is false
i == 3
i != 3 is false</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-17">
<ul>
<li>C17 &#26631;&#20934;&#65288;ISO/IEC 9899:2018&#65289;&#65306;</li>
</ul>
<dl>
<dd>
<ul>
<li>6.8.4.1 The if statement (p: 108-109)</li>
</ul>
</dd>
</dl>
</div>
<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.8.4.1 The if statement (p: 148-149)</li>
</ul>
</dd>
</dl>
</div>
<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.8.4.1 The if statement (p: 133-134)</li>
</ul>
</dd>
</dl>
</div>
<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.6.4.1 The if statement</li>
</ul>
</dd>
</dl>
</div>
<h3><span class="mw-headline" id=".E5.8F.82.E9.98.85">&#21442;&#38405;</span></h3>
<table class="t-dsc-begin"></table>
</div>
<div class="visualClear"></div>
</div>
</div>
</div>
</body>
</html>