關鍵字:
void,功能:聲明無返回值或無參數函數,聲明無類型指針。
char,功能:字符型類型數據。
int,功能:整型數據,通常爲編譯器指定的機器字長。
float,功能:單精度浮點型數據。
double,功能:雙精度浮點型數據。
short,功能:短整型數據,可修飾的int。
long,功能:長整型數據,可修飾的int。
signed,功能:有符號數據類型。
unsigned,功能:無符號數據類型。
struct,功能:聲明結構體。
union,功能:聲明結構體。
enum,功能:聲明枚舉。
typedef,功能:聲明類型名稱。
sizeof,功能:用於檢測特定類型或特定類型變量的大小。
auto,功能:聲明自動變量,由編譯器自動分配及釋放內存。
static,功能:聲明靜態變量,修飾函數時,指定函數爲文件內部使用。
register,功能:聲明寄存器變量。
extern,功能:聲明外部變量。
const,功能:與volatile合稱“cv 特性“,指定變量不被當前線程或者進程改變,但有可能被系統、其他線程或者進程改變。
volatile,功能:指定變量的值可能會被系統或其他進程或線程改變,強制使用編譯器每次都要從內存中取得該變量的值。
return,功能:返回特定值。
continue,功能:跳出當循環,開始下一循環。
break,功能:循環停止或switch結構停止。
goto,功能:無條件跳轉語句。
if,功能:條件語句。
else,功能:條件語句否定分支,常與if連用。
switch,功能:分支語句。
case,功能:分支語句中的分支標記。
default,功能:分支語句中優化選擇,可選。
for,功能:for循環結構。
do,功能:do循環結構。
while,功能:while循環結構。
運算符:
()
括號運算符,表示一個標識符代表一個函數,fcnname()。 還可用於劃分優先級,即1+23,如果不記得先算+還是先算,那就寫成1+(23)或(1+2)3。最後,括號還可以用於C的強制類型轉換。[]
數組運算符,表示一個標識符代表一個數組,arrname[]。從數組中取一個元素,arr[2]->
成員訪問,用於通過指針變量訪問成員,ptr->member等價於(*ptr).member.
成員訪問,訪問複合數據類型的成員~
按位取反,1變0,0變1++
自增運算符,將變量自身的值加一,分爲前++和後++,前++是先執行自增使用增加後的值進行運算,後++是先進行運算,語句執行完畢後再進行++,效率不如前++,因爲需要將變量的值臨時複製一份*
取值運算符,聲明某一類型的變量。取一個指針變量指向的值&
取址運算符,取一個變量的地址<<
左移運算符,將操作數的二進制數據向左移一位,低位補0。當然是對補碼移動,但對原碼還是補碼進行左移其結果都相當於將數據乘以2的n次方<<
右移運算符,將操作數的二進制數據向右移一位,帶符號右移時高位補0,右移n位相當於除以2的n次方,不帶符號時高位補符號位,此時非負數還是相當於除以2的n次方,負數就不是了&
按位與,有0出0,全1出1^
按位異或,不同爲1,相同爲0,使用異或交換兩個數:a^=b;b^=a;a^=b;
|
按位或,有1出1,全0出0,&&
邏輯與,全真爲真,有假爲假,C語言中用1表示負真異,0表示非負假同?:
條件運算符,C語言中唯一一個三目運算符,表達式A?表達式B:表達式C表示對表達式A的值進行判斷,如果A爲真,則執行表達式B,否則執行表達式C- 在C語言中逗號“,”也是一種運算符,稱爲逗號運算符。 其功能是把兩個表達式連接起來組成一個表達式, 稱爲逗號表達式。其一般形式爲:
表達式 1,表達式 2
其求值過程是分別求兩個表達式的值,並以表達式 2 的值作爲整個逗號表達式的值。
常用頭文件:
頭文件 說明 alloc.h 說明內存管理函數(分配、釋放等)。 assert.h 定義 assert調試宏。 bios.h 說明調用IBM—PC ROM BIOS子程序的各個函數。 conio.h 說明調用DOS控制檯I/O子程序的各個函數。 ctype.h 包含有關字符分類及轉換的名類信息(如 isalpha和toascii等)。 dir.h 包含有關目錄和路徑的結構、宏定義和函數。 dos.h 定義和說明MSDOS和8086調用的一些常量和函數。 error.h 定義錯誤代碼的助記符。 fcntl.h 定義在與open庫子程序連接時的符號常量。 float.h 包含有關浮點運算的一些參數和函數。 graphics.h 說明有關圖形功能的各個函數,圖形錯誤代碼的常量定義,正對不同驅動程序的各種顏色值,及函數用到的一些特殊結構。 io.h 包含低級I/O子程序的結構和說明。 limit.h 包含各環境參數、編譯時間限制、數的範圍等信息。 math.h 說明數學運算函數,還定了 HUGE VAL 宏, 說明了matherr和matherr子程序用到的特殊結構。 mem.h 說明一些內存操作函數(其中大多數也在STRING.H中說明)。 process.h 說明進程管理的各個函數,spawn…和EXEC …函數的結構說明。 setjmp.h 定義longjmp和setjmp函數用到的jmp buf類型,說明這兩個函數。 share.h 定義文件共享函數的參數。 signal.h 定義SIG[ZZ(Z] [ZZ)]IGN和SIG[ZZ(Z] [ZZ)]DFL常量,說明rajse和signal兩個函數。 stddef.h 定義讀函數參數表的宏。(如vprintf,vscarf函數)。 stddef.h 定義一些公共數據類型和宏。 stdio.h 定義Kernighan和Ritchie在Unix System V 中定義的標準和擴展的類型和宏。還定義標準I/O 預定義流:stdin,stdout和stderr,說明 I/O流子程序。 stdlib.h 說明一些常用的子程序:轉換子程序、搜索/ 排序子程序等。 string.h 說明一些串操作和內存操作函數。 sys\stat.h 定義在打開和創建文件時用到的一些符號常量。 sys\types.h 說明ftime函數和timeb結構。 sys\time.h 定義時間的類型time[ZZ(Z] [ZZ)]t。 time.h 定義時間轉換子程序asctime、localtime和gmtime的結構,ctime、 difftime、 gmtime、 localtime和stime用到的類型,並提供這些函數的原型。 value.h 定義一些重要常量,包括依賴於機器硬件的和爲與Unix System V相兼容而說明的一些常量,包括浮點和雙精度值的範圍。
常用轉義字符
輸入輸入函數
格式化輸入輸出類型