c語言基礎

2021-06-23 04:36:54 字數 1250 閱讀 6885

基 礎 概 括(預處理指令)重點

預處理指令:在**編譯到0跟1之前,所執行的指令。

特點:1,先進行。

2,以#開頭。(所有預處理指令都必須以#開頭,巨集名必須大寫或以k開頭)

3,地方隨便你寫,哪都行。

預處理指令的作用域:(預處理指令後不寫分號)

從編寫指令的那一行到檔案結尾。

一 巨集定義分兩種:

1,不帶引數的;

2,帶引數的;

巨集名:就是在編譯之前把巨集名替換成想換的內容。

注意:在雙引號裡面的「巨集名」不會被替換。

#define

#undef(取消巨集定義)

小語法:#define sum (v1 , v2) ( (v1) + (v2) )  意思是把左面的東西 替換成右邊的加法運算。

經驗:右邊括號裡的引數必須把每個引數都用小括號括起來,以防止出現運算錯誤。

巨集定義只負責換**,純文字替換。

函式在執行時呼叫,巨集定義在翻譯前執行,以此巨集定義比函式執行執行的效能要好。

二 條件編譯

條件編譯:以#開頭,在編譯0跟1之前編譯。

滿足一定條件才可以編譯,不滿足不要編譯。

例子:

#define a 10

int main()

#elif (a == 5)

#else

#endif  必須加上  #endif表示從這裡結束,後面的語句不屬於判斷範圍。

return 0; }

如果在第乙個條件符合,後面所有的條件都不編譯,編譯到0跟1.

與原有函式比較,原有函式不管成不成立都先進行編譯後在進行比較,條件就是不滿足,也都把**編譯了個遍。

以此,條件編譯在效能上大大優越於原有函式的效能。

三  檔案包含

#include<>   <>表示系統自帶的檔案。

#include"  "   "  "表示自定義的檔案。

絕對不允許巢狀包含,迴圈包含 比如: a包含.h  b包含.h   ,b包含.h  a包含.h。

怎樣保證在編寫**是,標頭檔案的宣告檔案,不會被重複拷貝。

方法: #ifndef abc

#define abc

#endif

這種形式在多檔案開發中使用。一般會以自己的檔名為頭名。

如:#ifndef li si _h

#define li si _h

#endif 

注意:檔案開頭必須大寫。

c 語言基礎

三個訪問描述符 public private 和protected 都可以修飾類的資料成員和成員函式 public 可以可以被任何訪問,private 只能被該類的公,私成員函式,該類的友元函式或者友元類的成員函式訪問。protected 只能被該類的公,私成員函式和該類的派生類訪問。c 中除了,和...

c語言基礎

1.問題描述 從鍵盤輸入三個整數,分別存入x,y,z三個整型變數中,計算並輸出三個數的和以及平均值。輸入形式 從鍵盤輸入三個整數,整數之間以空格隔開。輸出形式 在螢幕上分兩行顯示結果 第一行為三個數的和,整數形式輸出 第二行為三個數的平均值,浮點數形式輸出,小數點後保留兩位小數。輸入樣例 3 2 3...

C語言基礎

找最大最小整數 2.問題描述 編寫乙個程式,使用者輸入若干整數,試找出其中的最大數和最小數。輸入形式 使用者在第一行待輸入資料個數,在第二行輸入資料。輸出形式 程式在下一行輸出資料的最大值和最小值 樣例輸入 589 62 96 74 52 樣例輸出 96 52 樣例說明 使用者第一次輸入的為資料個數...