C語言小知識

2021-08-08 14:23:46 字數 655 閱讀 1235

nowcoder(牛客網)   筆記

一、區域性變數與全域性變數

區域性變數不會影響全域性變數的值,使用完即會釋放

二、變數的傳遞

形參的修改對外部不影響

傳入引用與指標時在函式裡修改的將會傳遞出來

三、c語言與c++中的const

void main()

在c語言中結果為1,1

在c語言中const是執行時的,在執行時才初始化,c語言const變數在執行時改變了

是可以再次讀出的

在c++中結果為0,1

在c++中const變數是編譯使得常量,在編譯的時候已經確定,直接對const變數經行

了替換,因此當const變數的值改變時,const的變數值是不會得到更新的

四、#define用法

**在遇到#difine的定義是就直接吧#define定義的內容替換到源**中去了

五、與,或,非

邏輯與和位與

邏輯或和位或

邏輯非和位非

六、char* p 與char p的區別

*p中p僅僅代表乙個位址而不是一塊記憶體,所以不能給*p副

p中代表這塊記憶體的首位址

七、字尾表示式

是指不包括括號,運算子放在兩個運算物件的後面,所有計算按運算子出現的順序,重左到右執行

C語言 小知識

1.表示式的求值 初始值 x 1,y 1 z 1 求 x y z 答 從左到右順序依次求值,1 true 注意 因為 操作符的左運算元是true,所以沒有必要求值了.事實上c語言肯定不會繼續求值 有關規則,在按從左到右的順序對乙個邏輯表示式求值的時候,只要知道了它的實際結果,就不會對其餘部分求值.這...

c語言小知識

1 為什麼include標頭檔案後,就可以呼叫檔案中宣告的函式了?標頭檔案中一般只是函式和變數的宣告,編譯器需要知道函式傳遞的是什麼引數,否則呼叫的地方 不知道如何設定暫存器和棧等一些相關資訊。至於函式的位置,由於在其他的編譯單元中,需要鏈結 時才能找到。標頭檔案中包含了函式的宣告,其具體的函式 即...

C語言小知識

所有的轉義字元和所對應的意義 轉義字元 意義ascii碼值 十進位制 a響鈴 bel 007 b 退格 bs 將當前位置移到前一列 008 f 換頁 ff 將當前位置移到下頁開頭 012 n 換行 lf 將當前位置移到下一行開頭 010 r 回車 cr 將當前位置移到本行開頭 013 t 水平製表 ...