<kbd id="daqct"></kbd>

  • <nav id="daqct"></nav>
    <wbr id="daqct"><pre id="daqct"></pre></wbr>
    <wbr id="daqct"></wbr>
    <form id="daqct"><th id="daqct"></th></form>
    更多課程 選擇中心

    C/C++培訓
    達內IT學院

    400-111-8989

    C語言函數求參數順序問題

    • 發布:C++培訓
    • 來源:計算機二級C語言
    • 時間:2019-12-04 16:14

    首先,看一道某年全國二級C語言考試的選擇題。

    問以下代碼輸出結果

    int func(int a,int b)
    
    { int c;
    
    c=a+b;
    
    return c; }
    
    main()
    
    { int x=6,r;
    
    r=func(x,x+=2);
    
    printf("%d\n",r); }

    選項大概是 12、14、16、 有誤無法運行。

    選 14的人占多數,還有不少認為有誤無法運行的。

    首先,這段代碼是可以執行的。

    這道題談不上難,但不知道的就會錯。

    這道題答案是16。

    C語言函數求參數順序問題

    對于函數的參數,在計算的時候是按照從右往左的順序進行的。

    對于函數func,先求右邊x+=2參數,返回x=8,然后計算結果。也就是傳遞給形參的兩個值都是8,返回值為16。

    下面我們寫程序驗證下,并結合自增自減運算升級下難度。

    思考下面程序執行結果:

    #include<stdio.h>
    
    void fun(int m,int n)
    
    {
    
    printf("%d+%d\n",m,n);
    
    }
    
    int main()
    
    {
    
    int a=100;
    
    fun(a,a+=2);
    
    printf("%d,%d,%d\n",++a,a--,++a);
    
    printf("%d\n",a);
    
    return 0;
    
    }

    根據上面講到的內容,你要想到的是printf也是函數,參數計算也要按照從左往右。但這時候涉及到++,多數同學就又會弄不清了。我們看下執行結果,幫助大家理解。

    C語言函數求參數順序問題

    首先,第一行驗證了傳遞給形參的值都是a加2之后值102.

    第二行,按照從右往左,第一個是先讓a的值+1,輸出103。第二個還是a 103。但下一步是先讓a的值-1,再計算左邊的參數,還是別的呢?

    根據運行結果,我們知道是先計算左邊參數,a的值+1輸出104,然后用完了以后a的值-1。

    最后一行輸出103也驗證了是最后執行a的值-1。

    本文內容轉載自網絡,本著分享與傳播的原則,版權歸原作者所有,如有侵權請聯系我們進行刪除。

    預約申請免費試聽課

    填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

    上一篇:用C求數組中的最大值的簡單代碼
    下一篇:C++中類定義時不允許使用不完整的類型錯誤提示原因分析

    超全的C語言標識符知識

    C指針——指針類型轉換

    C指針——指針和結構類型的關系

    C指針——數組和指針的關系

    • 掃碼領取資料

      回復關鍵字:視頻資料

      免費領取 達內課程視頻學習資料

    • 視頻學習QQ群

      添加QQ群:1143617948

      免費領取達內課程視頻學習資料

    Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

    選擇城市和中心
    黑龍江省

    吉林省

    河北省

    湖南省

    貴州省

    云南省

    廣西省

    海南省

    欧美三级片,白洁外传,第四色播日韩AV第一页,啪啪免费观看大全av 百度 好搜 搜狗
    <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>