C語言期末基礎知識大盤點!拒絕掛科,從我做起,爭做別人家的娃!


一、C語言基本常識

    1、語言由函數組成

    2、main是程序入口

    3、C語言中不能出現中文或中文字符 (注釋和字符串除外)

        關鍵字 : C語言提供表示特殊含義的單詞。

            特點 : 1、 全部小寫 ;2、在Xcode中是紫褐色。

        標識符 : 程序員自己在代碼中為某些東西起的名字。

            規則 : 1、字母、數字、下划線組成;2、嚴格區分大小寫;3、不能以數字開頭;4、不能與關鍵字重名。

            規范:駝峰標識。

        注釋:對代碼的解釋說明,它是程序員看的,它不參與編譯。

            包括單行注釋 和 多行注釋(多行注釋可以嵌套單行注釋,但多行注釋不能嵌套多行注釋)。

         數據:存儲時長:靜態數據:存儲在硬盤上的數據;動態數據:內存中的數據。

         常量:不可以改變的量。

         變量:可以改變的量。

 

二、數據類型

    1、基本數據類型

        int——4字節——%d  %i

        float——4字節——%f

        double——8字節——%lf

        char——1字節——%c

        枚舉:枚舉的本質是整型(enum)

        場合:當某個東西只有幾個固定取值的時候

        特點:先定義枚舉類型,根據枚舉類型定義枚舉變量

    2、構造類型

        (1)數組:用來從年初相同數據類型的多個數據的集合

            定義:數據類型  數組名稱 [元素個數]

            遍歷:把所有的元素都拿出來看一下(循環)

        (2)結構體:多個數據放在一起可以表示特定的含義組成結構體

            特點:先定義結構體類型,然后定義結構體變量

            結構體與函數:如同基本數據類型與函數的關系

 

三、指針:指針就是地址

    1、指針變量:用來存放地址的變量。

        (1)指針只有初始化了才可以訪問它所指向的存儲空間;

        (2)如果一個指針沒有初始化,它里面是垃圾值,稱為野指針;

        (3)不能直接賦值一個整形數。

    2、基本數據類型的指針: 指向基本數據類型的指針。

        格式:數據類型 * 指針變量名稱。

    3、結構體的指針: 指向結構體類型的指針。

        格式:結構體類型 * 指針變量名稱。

            訪問其所指向的結構體成員方式; (*指針變量名稱).成員名稱;指針變量名稱->成員名稱。

    4、數組指針: 指向數組的指針;

        格式: 所指向的數組的數據類型 (*指針變量名稱)[所指向的數組的元素個數]。

            這種指針與二位數組名是等價的。

    5、函數指針: 指向函數的指針。

        格式: 所指向函數的返回值類型(*指針變量名稱)[所指向函數的形參列表]。

            通過函數指針調用函數;(*指針變量名稱)(實參列表);指針變量名稱(實參列表)。

 

四、運算符

    1、算數運算符

            + - *  / %

    2、賦值運算符

            = += -= *= /= %=

    3、自增自減運算符

            ++a , a++

            --a , a--

    4、sizeof運算符:用來計算變量、常量、數據類型所占用存儲空間的字節數

            sizeof(常量) sizeof常量

            sizeof(變量) sizeof變量

            sizeof(數據類型)

    5、逗號運算符

            1、運算順序是從左到右

            2、逗號表達式的運算結構為最后一個表達式的值

    6、關系運算符

            ==  != > < >= <=

    7、邏輯運算符

            &&            ||                !

    8、三目運算符

            條件表達式  ?  結果1  :  結果2

            優先級:一般優先級越高越先進行計算

            結合方向:當優先級相同時,計算方向(從左到右,從右往左)

 

五、  流程控制:控制程序的執行流程

    1、順序結構:按照從上到下的順序執行

    2、分支結構:相當於岔路口,當條件滿足的時候就執行某段代碼

        (1)if 語句:

           ◎ if 必須以if 開頭

           ◎ if 可以有多個else if

           ◎ if 語句最多有一個else

           ◎ if 語句中對多只有一個代碼塊會被執行

           ◎ 如果有 else 那么必然有一個代碼塊會被執行

        (2)switch 語句: 當變量與否個常量相等時執行這個常量所對應代碼塊中的語句


 

注意點:1、僅支持整型數;2、case 后面只能是常量或常量表達式;3、case 后面的常量的值不能相同;4、結束條件  遇到break 或  "}"。

    3、循環結構:當條件滿足就會一直執行循環體中的代碼,直到條件不再滿足為止

        (1)while 語句:當條件滿足的時候就執行while后面大括號中的語句

        (2)do while:循環體中代碼至少執行一次

        (3)for語句:


 

        (4)break:1、在switch語句中用來結束switch語句;2、用在循環結構中,用結束當前的循環語句。

        (5)continue:只能用在循環結構中,跳過本次循環體重continue后面的語句,進入下一個條件判斷。

 

六、函數 : 完成特定功能的代碼段

    定義格式:


 

    函數聲明:告訴編譯器該函數已經存在了(函數的聲明可以有多個,定義只能有一個)。

    函數參數:

        1、基本數據類型作為函數參數傳遞是值傳遞;

        2、數組作為函數參數傳遞是地址傳遞;

        3、指針作為函數參數傳遞是地址傳遞;

        4、結構體作為函數參數傳遞與基本數據類型一致。

    函數返回值:函數完成功能后要返回給主調函數中的數據。

        1、返回值的類型必須與返回值的類型一致;

        2、一個函數只能有一個返回值;

         return 作用:返回值給主調函數,結束函數。

 

七、預處理指令:在編譯之前需要進行解析處理的指令

    1、宏定義:

                  不帶參數的宏定義:在編譯之前,使用宏名后面值,替換代碼中所有出現宏名標識的地方

                  帶參數的宏定義:把參數帶入宏名表達式中,然后替換宏調用的地方

    2、條件編譯:在編譯的時候,當條件滿足時就編譯某段代碼

                  #if開頭  #elif  #else  #endif結尾 

                  #ifdef  #endif

                  #ifndef  #endif

    3、文件包含:

        #include ——拷貝所包含的文件內容到#include指令所在地方。

        #include " " ——包含自己的文件。

        #include <  > ——包含系統的頭文件。

    4、進制:

        十進制

        二進制:0b 或0B

        八進制:0——%o 或 %0

        十六進制:0x或0X——%x或%X

        位運算:&  |  ^  ~  >>  <<


 

最后,不管你是轉行也好,初學也罷,進階也可,如果你想學編程~

【值得關注】我的 C/C++編程學習交流俱樂部!點擊進入】

問題答疑,學習交流,技術探討,還有超多編程資源大全,零基礎的視頻也超棒~

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM