-
按位異或:定位反轉、數值交換
按位取反:對二進制位取反
查看全部 -
按位或:設置指定位的數值、
查看全部 -
按位與作用:迅速清零、保留指定位的值、判斷奇偶型(數值&1,得到奇數為1,偶數為0)
查看全部 -
1.注意頭文件
查看全部 -
在鏈表中,通過上一個元素的下一個元素的地址才可訪問元素,若無頭指針是無法訪問鏈表的
查看全部 -
3。鏈表的構成
查看全部 -
2.鏈表的儲存位置不一定是連續的
查看全部 -
1.
查看全部 -
1.
查看全部 -
公用體:不同的變量使用相同的內存單元,可以節省開銷,但同一時刻只能存儲一個成員,只能有一個常量,內存長度是所有成員中最長的長度。
定義:union 名稱{
? ? ? ? 成員類型 成員名;
? ? ? ? 成員類型 成員名;
? ? ? ? .....
? ? ? };
聲明:union 名稱 變量名;
賦值:名稱.成員名=..;
結構體空間大?。鹤詈笠粋€成員的偏移量(成員的實際地址與結構體首地址之間的差距)+最后一個成員的大小+末尾的填充字節數(由于每個成員相對于結構體首地址的偏移量都得是當前成員所占內存大小的整數倍,若不是,則會加上填充字節 )
查看全部 -
初始化結構體成員:struct 名稱 變量名 = {"字符數據",數據,數據....};
訪問結構體成員:變量名.結構體成員
結構體數組,每個元素都是一個結構體類型的數據,每個結構體成員類型數量相同。
查看全部 -
結構體類型:struct 名稱{
? ? ? ? ? ? int 名稱;
? ? ? ? ? ? char 名稱;
? ? ? ? ? ? ......
? ? ? ? ? ? };
聲明方法:1、struct 名稱 變量名;
? ? ? ? ? 2、聲明的時候去定義(適合小程序編寫,大程序編寫顯得不夠精細):
? ? ? ? ? ? ?struct 名稱{
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?int 名稱;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?char 名稱;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ......
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }變量名;
? ? ? ? ? ?3、不指定結構體的名稱(只能定義一種結構體類型):
? ? ? ? ? ? ? ? ? ? ? ?struct{
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? int 名稱;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? char 名稱;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?......
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }變量名;
查看全部 -
typedef 是一個關鍵字,不參與預處理,給變量類型起別名
格式:typedef 類型 別名;
例子:typedef int *p;
? ? ? p q = NULL; 相當于 int *q = NULL;
宏的作用域是整個程序文件,即使寫在某個函數里面,還是可以全局調用
typedef是有作用域的,在全局中寫作用全局,在函數內寫,作用在函數內
查看全部 -
宏聲明:#define 替代的字符 被替換的數據
查看全部 -
gcc -o 生成文件.i 被執行文件.c -E(只進行預處理)
預處理:展開頭文件、宏替換
宏是不考慮C的語法,只是單純的字符串替換
?
查看全部
舉報