在寫函式的過程中,如果預先給好了幾個引數,那麼在使用函式的時候會更方便一點。比如:
#include
using
namespace std;
intfunc
(int a,
int b =20,
int c =30)
intmain()
這樣也可以輸出60。
而下面的函式呼叫如果寫成func(10,30)就會得到結果70,說明函式呼叫引數的順序是從左到右依次呼叫的,且實參值可以覆蓋形參值。
還有一點要注意的就是當乙個形參有預設值之後,其後的形參都必須有預設值。
注意:如果函式在宣告當中有了預設引數,則在函式實現的時候不能新增預設引數。宣告和實現中只能有乙個函式體帶預設引數。
C語言學習記錄20 鏈結過程
問題 工程中的每個c語言原始檔被編譯後生產目標檔案,這些檔案如何生成最終的可執行程式?鏈結器的主要作用是把各個模組之間相互引用的部分處理好,使得模組之間能夠爭取的銜接。靜態鏈結 由鏈結器在鏈結時將庫的內容直接加入到可執行程式中。在linux靜態庫下的建立和使用 1 編譯靜態庫原始碼 gcc c li...
C 語言學習記錄 10 內聯函式
內聯函式指的是一種在呼叫函式時提高執行效率的一種機制。在編譯器編譯的時候,用函式體裡面的語句去替換函式呼叫表示式,不需要引數呼叫及返回,以省去呼叫時和轉子函式並返回時所用的資源和開銷。內聯函式實際上是通過乙個inline關鍵字將函式從函式體中引入主函式,就直接存放在主函式中,從而減少呼叫函式所需要的...
C語言學習要點記錄
1.運算的優先順序 算數 關係 邏輯 賦值 逗號運算子 2.複製是程式不良的表現 因為一旦乙個地方有變動要在很多地方修改 3.程式設計的過程中最好使用單一出口 4.本地變數在定義的時候不會預設初始化,引數在定義的時候一定要初始化 5.本地變數的生存期和作用域在定義的塊內 6.程式這次執行正常下次執行...