<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                #### 零起點學通C語言摘要 #### #### 函數 #### #### 函數的運行原理 #### #include<stdio.h> int add(int x,int y) //形式參數x和y { int z;//局部變量z z=x+y; return z;//返回值 } int main() { int x=1,y=2; add(x,y);//調用add()函數,假設該指令的地址為1003,指令指針先保存該地址, //然后將該地址值加1,使其指向下一條指令,即return語句,該地址隨后被放置在棧中ibng, //則add函數調用結束后,將返回到return來執行 //1、將下一條指令的地址保存到棧中 //2、跳轉到add函數的定義處執行 return 0; } 當函數被調用時,指令指針的地址值增加1,使其指向函數調用后的下一條指令,該地址隨后被放置在棧中,它將作為函數返回的返回地址。指令指針用于存放下一條待執行指令的地址 函數也有也址.不過該地址保存在目標文件的符號表中(函數各是-個符號, 該符號對應輸-個標號.這個標號就是函數的地址. 一般為相對地址,即函數第-條指令相對于程序代碼區起始位置的偏移量),當調用某個函數時,就從符號表中提取該函數的地址。也就是該函數第1 條指令的地址,然后由寄存器中的指令指針來保存。 **函數入棧如圖所示** ![](http://i.imgur.com/Mldviay.png) **函數出棧如圖所示** ![](http://i.imgur.com/wdjckLq.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看