一,、C語言基本常識1,、語言由函數(shù)組成 2,、main是程序入口 3,、C語言中不能出現(xiàn)中文或中文字符 (注釋和字符串除外) 關(guān)鍵字 : C語言提供表示特殊含義的單詞。 特點(diǎn) : 1,、 全部小寫 ,;2、在Xcode中是紫褐色,。 標(biāo)識符 : 程序員自己在代碼中為某些東西起的名字,。 規(guī)則 : 1、字母,、數(shù)字,、下劃線組成;2,、嚴(yán)格區(qū)分大小寫,;3、不能以數(shù)字開頭,;4,、不能與關(guān)鍵字重名。 規(guī)范:駝峰標(biāo)識,。 注釋:對代碼的解釋說明,,它是程序員看的,它不參與編譯。 包括單行注釋 和 多行注釋(多行注釋可以嵌套單行注釋,,但多行注釋不能嵌套多行注釋),。 數(shù)據(jù):存儲時長:靜態(tài)數(shù)據(jù):存儲在硬盤上的數(shù)據(jù);動態(tài)數(shù)據(jù):內(nèi)存中的數(shù)據(jù),。 常量:不可以改變的量,。 變量:可以改變的量。 二,、數(shù)據(jù)類型1,、基本數(shù)據(jù)類型 int——4字節(jié)——%d %i float——4字節(jié)——%f double——8字節(jié)——%lf char——1字節(jié)——%c 枚舉:枚舉的本質(zhì)是整型(enum) 場合:當(dāng)某個東西只有幾個固定取值的時候 特點(diǎn):先定義枚舉類型,根據(jù)枚舉類型定義枚舉變量 2,、構(gòu)造類型 (1)數(shù)組:用來從年初相同數(shù)據(jù)類型的多個數(shù)據(jù)的集合 定義:數(shù)據(jù)類型 數(shù)組名稱 [元素個數(shù)] 遍歷:把所有的元素都拿出來看一下(循環(huán)) (2)結(jié)構(gòu)體:多個數(shù)據(jù)放在一起可以表示特定的含義組成結(jié)構(gòu)體 特點(diǎn):先定義結(jié)構(gòu)體類型,,然后定義結(jié)構(gòu)體變量 結(jié)構(gòu)體與函數(shù):如同基本數(shù)據(jù)類型與函數(shù)的關(guān)系 三,、指針:指針就是地址1,、指針變量:用來存放地址的變量。 (1)指針只有初始化了才可以訪問它所指向的存儲空間,; (2)如果一個指針沒有初始化,,它里面是垃圾值,稱為野指針,; (3)不能直接賦值一個整形數(shù),。 2、基本數(shù)據(jù)類型的指針: 指向基本數(shù)據(jù)類型的指針,。 格式:數(shù)據(jù)類型 * 指針變量名稱,。 3、結(jié)構(gòu)體的指針: 指向結(jié)構(gòu)體類型的指針,。 格式:結(jié)構(gòu)體類型 * 指針變量名稱,。 訪問其所指向的結(jié)構(gòu)體成員方式; (*指針變量名稱).成員名稱,;指針變量名稱->成員名稱,。 4、數(shù)組指針: 指向數(shù)組的指針,; 格式: 所指向的數(shù)組的數(shù)據(jù)類型 (*指針變量名稱)[所指向的數(shù)組的元素個數(shù)],。 這種指針與二位數(shù)組名是等價的。 5,、函數(shù)指針: 指向函數(shù)的指針,。 格式: 所指向函數(shù)的返回值類型(*指針變量名稱)[所指向函數(shù)的形參列表]。 通過函數(shù)指針調(diào)用函數(shù),;(*指針變量名稱)(實(shí)參列表),;指針變量名稱(實(shí)參列表)。 四、運(yùn)算符1,、算數(shù)運(yùn)算符 + - * / % 2,、賦值運(yùn)算符 = += -= *= /= %= 3、自增自減運(yùn)算符 ++a , a++ --a , a-- 4,、sizeof運(yùn)算符:用來計(jì)算變量,、常量、數(shù)據(jù)類型所占用存儲空間的字節(jié)數(shù) sizeof(常量) sizeof常量 sizeof(變量) sizeof變量 sizeof(數(shù)據(jù)類型) 5,、逗號運(yùn)算符 1,、運(yùn)算順序是從左到右 2、逗號表達(dá)式的運(yùn)算結(jié)構(gòu)為最后一個表達(dá)式的值 6,、關(guān)系運(yùn)算符 == != > < >= <= 7,、邏輯運(yùn)算符 && || ! 8、三目運(yùn)算符 條件表達(dá)式 ? 結(jié)果1 : 結(jié)果2 優(yōu)先級:一般優(yōu)先級越高越先進(jìn)行計(jì)算 結(jié)合方向:當(dāng)優(yōu)先級相同時,,計(jì)算方向(從左到右,,從右往左) 五、 流程控制:控制程序的執(zhí)行流程1,、順序結(jié)構(gòu):按照從上到下的順序執(zhí)行 2,、分支結(jié)構(gòu):相當(dāng)于岔路口,當(dāng)條件滿足的時候就執(zhí)行某段代碼 (1)if 語句: ◎ if 必須以if 開頭 ◎ if 可以有多個else if ◎ if 語句最多有一個else ◎ if 語句中對多只有一個代碼塊會被執(zhí)行 ◎ 如果有 else 那么必然有一個代碼塊會被執(zhí)行 (2)switch 語句: 當(dāng)變量與否個常量相等時執(zhí)行這個常量所對應(yīng)代碼塊中的語句
3、循環(huán)結(jié)構(gòu):當(dāng)條件滿足就會一直執(zhí)行循環(huán)體中的代碼,,直到條件不再滿足為止 (1)while 語句:當(dāng)條件滿足的時候就執(zhí)行while后面大括號中的語句 (2)do while:循環(huán)體中代碼至少執(zhí)行一次 (3)for語句: (4)break:1,、在switch語句中用來結(jié)束switch語句;2,、用在循環(huán)結(jié)構(gòu)中,,用結(jié)束當(dāng)前的循環(huán)語句。 (5)continue:只能用在循環(huán)結(jié)構(gòu)中,,跳過本次循環(huán)體重continue后面的語句,,進(jìn)入下一個條件判斷。 六,、函數(shù) : 完成特定功能的代碼段定義格式: 函數(shù)聲明:告訴編譯器該函數(shù)已經(jīng)存在了(函數(shù)的聲明可以有多個,,定義只能有一個),。 函數(shù)參數(shù): 1、基本數(shù)據(jù)類型作為函數(shù)參數(shù)傳遞是值傳遞,; 2,、數(shù)組作為函數(shù)參數(shù)傳遞是地址傳遞; 3,、指針作為函數(shù)參數(shù)傳遞是地址傳遞,; 4、結(jié)構(gòu)體作為函數(shù)參數(shù)傳遞與基本數(shù)據(jù)類型一致,。 函數(shù)返回值:函數(shù)完成功能后要返回給主調(diào)函數(shù)中的數(shù)據(jù),。 1、返回值的類型必須與返回值的類型一致,; 2,、一個函數(shù)只能有一個返回值; return 作用:返回值給主調(diào)函數(shù),,結(jié)束函數(shù),。 七、預(yù)處理指令:在編譯之前需要進(jìn)行解析處理的指令1,、宏定義: 不帶參數(shù)的宏定義:在編譯之前,,使用宏名后面值,替換代碼中所有出現(xiàn)宏名標(biāo)識的地方 帶參數(shù)的宏定義:把參數(shù)帶入宏名表達(dá)式中,,然后替換宏調(diào)用的地方 2、條件編譯:在編譯的時候,,當(dāng)條件滿足時就編譯某段代碼 #if開頭 #elif #else #endif結(jié)尾 #ifdef #endif #ifndef #endif 3,、文件包含: #include ——拷貝所包含的文件內(nèi)容到#include指令所在地方。 #include " " ——包含自己的文件,。 #include < > ——包含系統(tǒng)的頭文件,。 4、進(jìn)制: 十進(jìn)制 二進(jìn)制:0b 或0B 八進(jìn)制:0——%o 或 %0 十六進(jìn)制:0x或0X——%x或%X 位運(yùn)算:& | ^ ~ >> << |
|