<p class="sougouContent"> </p> <p class="modified_message"> 本帖最后由 lghyt1 于 2013-12-13 17:30:27 编辑 </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="sycode" name="code"><?php do{ echo "循环".++$a; }while($a<4)?></pre><div class="contentsignin">登入後複製</div></div> <br /> 这段代码的输出结果是:循环1循环2循环3循环4 <br /> <br /> 我的疑问是:这里没有给$a事先增值啊,如输出一个循环1我还能理解,因为是do while循环,不管三七二十一,先输出一个再说,可是它竞然又输出了三个,我就不理解了,没有初始化$a这个变量,怎么能有那么多值呢? <br /> 下面 也一样的问题 <br /> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="sycode" name="code"><?php while($a<4){ echo "循环".++$a; }?></pre><div class="contentsignin">登入後複製</div></div> <br> <h2>回复讨论(解决方案)</h2> <p class="sougouAnswer"> 请你认真看书或手册!弄明白 ++$a 是怎么回事 </p> <p class="sougouAnswer"> 首先$a是NULL;(++$a)这段代码返回的值为$a的值即为1;每循环一次增加1;所以输出了四次。 </p> <p class="sougouAnswer"> do{ <br> echo gettype($a); <br> echo "循环".++$a; <br> }while($a</p>