const 作用是把乙個變數視為常量,這個變數不能被改變,可以用const int *a=&b;,*a不能被改變,a可以改變,a=&c這樣是可以的,*a=20這樣是不行的
int *const a=&b;這樣的話a不能改變,而*a可以改變
register關鍵字暗示編譯器前面帶有這個關鍵字的變數將被頻繁的利用 register int i;i將儲存在暫存器中,便於更快訪問
#每行以井字元開頭的**,會進行預處理
#define a b 把下面所有的a替換為b
#include"a.h"指將a.h的**放在這個檔案中
extern int i;將其他檔案中的全域性變數引用在這個檔案中
enum;將abcd定義作常量,並依次遞增加1,預設為0開始,中間可以設值,這行**結果是a=0,b=6,c=7,d=8
typedef int a;將a表示為int;
goto a;將會執行到a:。。。。。這行
位址有資料段, 文字段 ,堆,棧
棧用於呼叫函式,
堆包含根據請求分配給程式的記憶體塊,
資料塊包含可讀可寫資料,包括全域性變數,
文字段包含程式的可執行**和唯讀資料。
C易忘知識點
巨集定義中 類似於拼接,如 12 34 1234,並且如果34是乙個巨集,也會阻止其展開並拼接 將後邊的內容轉換成字串巨集定義可以巢狀 巨集定義中可以使用三目運算子,因為被認為是表示式,最終返回的是乙個結果。其實最重要就是記住巨集的用法是直接展開,然後看符不符合語法。int 左移 不溢位時符號位不變...
C 部分易忘知識點(更新)
define bool int define ture 1 define false 0布林型別變數在c 中佔1位元組空間,bool型別取值範圍僅有兩個值 true和false。例 bool flag true 引入命名空間的目的是為了避免命名衝突,其關鍵字為namespace。試想兩個不同程式設計...
python易忘知識點記錄
python函式在定義的時候,預設引數l的值就被計算出來了,即 因為預設引數l也是乙個變數,它指向物件,每次呼叫該函式,如果改變了l的內容,則下次呼叫時,預設引數的內容就變了,不再是函式定義時的了。def a l return l print 連續執行函式a的結果 print a 結果 null p...