亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

趣味 C++ 入門

難度入門
時長 3小時22分
學習人數
綜合評分9.63
19人評價 查看評價
9.4 內容實用
9.9 簡潔易懂
9.6 邏輯清晰
  • 函數的遞歸調用:在函數中調用自己

    void func()

    {

    ????????????func();

    }

    遞歸調用的三要素:

    1. 在遞歸調用中要設置好終止條件

    2. 遞歸很適合層級調用關系,每一層都執行相同的操作,關鍵是要提取出遞歸調用的核心要素

    3. 遞歸調用的參數列表表示給下一層調用需要傳遞什么,返回值表示上一層調用需要返回什么

    利用遞歸的特性,可以很簡單得處理一些利用循環特別復雜的問題,例如,遍歷文件夾,遍歷二叉樹等。

    查看全部
  • 1.作用:將函數體直接在調用處展開

    2.優點:沒有參數拷貝的過程,減少調用函數時的時間消耗

    3.缺點:當一個函數過程要反復被調用時,不應定義為內聯函數,因為每調用一次內聯函數,就會展開一次代碼,這樣會使得代碼體積迅速膨脹

    4.內聯函數實際上編譯器會幫你決定到底是否作為內聯函數

    5.內聯函數與宏定義的區別:宏定義是在預編譯階段就進行了,只是做了簡單的文本替換,而內聯函數不僅會在調用處展開代碼,且該過程是在編譯階段進行,即編譯器會對參數類型,返回值類型做檢查

    inline?int?add(int?__a,int?__b)
    {
    ????return?__a+__b;????
    }
    
    int?main(int?argc,char**?argv)
    {
    ????int?a?=?5;
    ????int?b?=?6;
    ???int?c?=?add(a,b);
    ???return?0;
    }
    
    //等效于
    int?main(int?argc,char**?argv)
    {
    ????int?a?=?5;
    ????int?b?=?6;
    ???int?c?=?a+b;
    ???return?0;
    }
    查看全部
  • 利用遞歸的特性,可以很簡單得處理一些利用循環特別復雜的問題,例如,遍歷文件夾,遍歷二叉樹等。靈活使用遞歸,將帶來極大的技術提升。

    查看全部
  • 參數傳遞(實參,形參),只是一個復制拷貝的過程,將實參賦值拷貝給形參,無論實參的數值還是地址。

    查看全部
  • 但是當要跳過的語句有好多行的時候,就會顯得特別不方便。因此,我們可以嘗試利用 do-while 語法來完成。

    do {
    ? ?if(a == 12){
    ? ? ? ?break;
    ? ?}
    ? ?b = a + b;
    } while(false);

    b = a - b;

    這樣,我們將 do-while 和 break 進行配合,完成一個和循環無關的程序結構。

    查看全部
  • while 和 for 的用途也不太一樣,for循環更適合循環次數比較確定的場景,例如數組遍歷等,而while 循環更適合不確定循環次數不確定的場景。

    查看全部
  • switch 接受了一個變量 s,然后使用 case 語句,判斷變量 s 和哪個常量相等(case 后面只能是常量)


    這就是 switch case 的特殊的地方,他在匹配到相應的 case 之后,會將后面所有的 case 從句都執行一次,直到碰到一個 break 語句。

    查看全部
  • #include?<stdio.h>
    int?main(int?argc,char?**argv)
    {
    ????int?a?=?1;
    ????int?b?=?2;
    ????a?=a^b;
    ????b?=?a^b;
    ????a=?a^b;
    ????printf("a=%d,b=%d",a,b);
    ????return?0;
    }
    查看全部
    0 采集 收起 來源:賦值運算符

    2021-07-07

  • 把數組初始化為非0值時,需要逐個賦值

    查看全部
    0 采集 收起 來源:強者爭霸

    2021-07-06

  • nullptr 是c++為描述空指針而提供的值,與NULL區別在于nullptr只能賦值給指針變量,NULL則可以賦值給整形等其他變量。兩者相較而言NULL可能會造成一些潛在的問題

    查看全部

  • (int argc,char **argv)

    第一個參數argc表示參數個數

    第二個argv是參數組

    int main

    retum中main函數有返回值,返回值為0成功。非0為失敗

    查看全部
    0 采集 收起 來源:main函數

    2021-07-05

  • 用C++向世界問好

    #include?<stdio.h>??//標準輸入輸出
    int?main(int?argc,char?**argv)???//主函數,是程序的入口函數。一個程序里有且只有一個main函數
    {
    ????printf("Hello?World!\n");???//stdio.h中包含printf功能
    ????return?0;
    }

    C++

    #include?<iostream>?//iostream是C++里的io流的頭文件
    
    int?main(int?argc,char?**argv)
    {
    ????std::cout?<<?"Hello?World!\n"?<<?std::endl;//C++的輸出風格
    ????return?0;
    }
    查看全部

  • #include <stdio.h>

    int main()

    {

    ? ? printf("int: %d\n",sizeof(int));

    ? ? return 0;

    }

    查看全部
  • 練習1:使用函數來交換兩個數的值

    #include?<iostream>
    int?exchange(int?*a,int?*b)
    {????int?c=*a;????*a=*b;????*b=c;???
    ?}
    ?int?main(int?argc,char?**argv)
    ?{????int?x=5;????
    ??????int?y=10;????
    ??????std::cout<<"交換的前:"<<"x="<<x<<","<<"y="<<y<<std::endl;????
    ??????exchange(&x,&y);????
    ??????std::cout<<"交換后的:"<<"x="<<x<<","<<"y="<<y;????????
    ??????return(0);
    ??}

    練習2:利用遞歸來求一個數的階乘

    int?fact(int?n)
    {????if(n==1)?{????????
    ?????????return?1;????
    ????????}????
    ?????else?{????????
    ?????????return?n?*?fact(n-1);????
    ??????????}
    ?}
    ?int?main(int?argc,char?**argv)
    ?{????int?x?=?5;????
    ??????int?res?=?fact(x);????
    ??????std::cout<<"5!="<<res;????
    ??????return?0;
    ??}
    查看全部
    2 采集 收起 來源:強者爭霸

    2021-06-24

  • 函數的遞歸調用:可以用來遍歷文件夾,遍歷二叉樹。

    查看全部

舉報

0/150
提交
取消
課程須知
本門課程使用 Windows 平臺下的 Visual Studio 作為開發工具,所以你要準備一臺 Windows 系統的電腦。當然,本門課程中介紹的所有代碼,并不是只能在 Windows 下運行,你同樣可以嘗試使用 Mac OS X 或者 Linux 或者其他的平臺進行學習,我們也鼓勵你進行這樣的嘗試。
老師告訴你能學到什么?
掌握在 Windows 下搭建 C++ 開發環境,了解 C++ 的基礎概念,例如變量,指針等。了解計算機的一些基礎知識,內存布局等。除此之外,本課程還將介紹一些編程小技巧,以及編程的代碼規范。

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!