auto按照自動(dòng)的方式進(jìn)行變量的存儲const定義常量或常參數extern聲明外部變量或函數register指定變量的存儲類(lèi)型是寄存器變量static指定變量的存儲類(lèi)型是靜態(tài)變量,或指定函數是靜態(tài)函數volatile變量的值可能在程序的外部被改變
char字符型數據short定義短整型變量或指針int整型數據long長(cháng)整型數據signed有符號的整型數據unsigned定義無(wú)符號的整型變量或數據float單精度浮點(diǎn)型數據double雙精度浮點(diǎn)型數據struct結構體型數據enum枚舉型類(lèi)型union聯(lián)合型數據void空型數據typedef為數據類(lèi)型定義別名
continue結束本次循環(huán)進(jìn)入下一次循環(huán)break跳出循環(huán)或switch語(yǔ)句switch定義switch語(yǔ)句case定義switch中的case子句default定義switch中的default子句do定義do-while語(yǔ)句while定義while或do-while語(yǔ)句if定義if語(yǔ)句或if-else語(yǔ)句else定義if-else語(yǔ)句for定義for循環(huán)語(yǔ)句goto定義goto語(yǔ)句
#include包含頭文件#define定義宏#undef取消已經(jīng)定義的宏#if定義條件編譯的條件#ifdef定義條件編譯的條件ifndef定義條件編譯的條件#elif定義條件編譯的條件#endif結束條件編譯
return從函數返回
| 優(yōu)先級 | 運算符 | 含義 | 操作數數目 | 結合方向感 |
|---|---|---|---|---|
| 1 | () [] -> . | 括號(函數等),數組,兩種結構成員訪(fǎng)問(wèn) | 雙目 | 左-右 |
| 2 | ! ~ ++ -- + - |* & (類(lèi)型) sizeof | 否定,按位取反,自增,自減,正負號,間接,取址,類(lèi)型轉換,求大小 | 單目 | 右-左 |
| 3 | * / % | 乘,除,取模 | 雙目 | 左-右 |
| 4 | + - | 加,減 | 雙目 | 左-右 |
| 5 | << >> | 左移,右移 | 雙目 | 左-右 |
| 6 | < <= >= > | 小于,小于等于,大于等于,大于 | 雙目 | 左-右 |
| 7 | == != | 等于,不等于 | 雙目 | 左-右 |
| 8 | & | 按位與 | 雙目 | 左-右 |
| 9 | ^ | 按位異或 | 雙目 | 左-右 |
| 10 | | | 按位或 | 雙目 | 左-右 |
| 11 | && | 邏輯與 | 雙目 | 左-右 |
| 12 | || | 邏輯或 | 雙目 | 左-右 |
| 13 | ? : | 條件 | 三目 | 右-左 |
| 14 | = += -= *= /= &= ^= |= <<= >>= | 各種賦值 | 雙目 | 右-左 |
| 15 | , | 逗號(順序) | 雙目 | 左-右 |
()括號運算符,表示一個(gè)標識符代表一個(gè)函數,fcnname()。 還可用于劃分優(yōu)先級,即1+23,如果不記得先算+還是先算,那就寫(xiě)成1+(23)或(1+2)3。最后,括號還可以用于C的強制類(lèi)型轉換。[] 數組運算符,表示一個(gè)標識符代表一個(gè)數組,arrname[]。從數組中取一個(gè)元素,arr[2]->成員訪(fǎng)問(wèn),用于通過(guò)指針變量訪(fǎng)問(wèn)成員,ptr->member等價(jià)于(*ptr).member.成員訪(fǎng)問(wèn),訪(fǎng)問(wèn)復合數據類(lèi)型的成員~按位取反,1變0,0變1++自增運算符,將變量自身的值加一,分為前++和后++,前++是先執行自增使用增加后的值進(jìn)行運算,后++是先進(jìn)行運算,語(yǔ)句執行完畢后再進(jìn)行++,效率不如前++,因為需要將變量的值臨時(shí)復制一份*取值運算符,聲明某一類(lèi)型的變量。取一個(gè)指針變量指向的值&取址運算符,取一個(gè)變量的地址<< 左移運算符,將操作數的二進(jìn)制數據向左移一位,低位補0。當然是對補碼移動(dòng),但對原碼還是補碼進(jìn)行左移其結果都相當于將數據乘以2的n次方<<右移運算符,將操作數的二進(jìn)制數據向右移一位,帶符號右移時(shí)高位補0,右移n位相當于除以2的n次方,不帶符號時(shí)高位補符號位,此時(shí)非負數還是相當于除以2的n次方,負數就不是了&按位與,有0出0,全1出1^按位異或,不同為1,相同為0,使用異或交換兩個(gè)數:a^=b;b^=a;a^=b;|按位或,有1出1,全0出0,&&邏輯與,全真為真,有假為假,C語(yǔ)言中用1表示負真異,0表示非負假同?:條件運算符,C語(yǔ)言中唯一一個(gè)三目運算符,表達式A?表達式B:表達式C表示對表達式A的值進(jìn)行判斷,如果A為真,則執行表達式B,否則執行表達式C
C語(yǔ)言里使用名稱(chēng)區分不同內容,諸如變量名,函數名etc這些名稱(chēng)叫做標識符(Identifier),實(shí)際開(kāi)發(fā)總是采用駝峰式或者下劃線(xiàn)式來(lái)書(shū)寫(xiě)標識符,標識符的長(cháng)度沒(méi)有限制,但是編譯器只會(huì )截取一部分使用
它的編寫(xiě)規則:
聯(lián)系客服