c++系列內容的學習目錄→函式是一組一起執行乙個任務的語句。每個 c++ 程式都至少有乙個函式,即主函式\rightarrow
→c++學習系列內容彙總。
main()
,所有簡單的程式都可以定義其他額外的函式。
函式宣告告訴編譯器函式的名稱、返回型別和引數。函式定義提供了函式的實際主體。
c++ 標準庫提供了大量的程式可以呼叫的內建函式。例如,函式strcat()
用來連線兩個字串,函式memcpy()
用來複製記憶體到另乙個位置。
函式還有很多叫法,比如方法、子例程或程式,等等。
函式的作用:將一段經常使用的**封裝起來,減少重複**。
乙個較大的程式,一般分為若干個程式塊,每個模組實現特定的功能。
函式的定義一般主要有5個步驟:
返回值型別
函式名參數列列
函式體語句
return 表示式
函式的語法:
返回值型別 函式名 (引數列表)
在 c++ 中,函式由乙個函式頭和乙個函式體組成。下面列出乙個函式的所有組成部分:
練習案例:定義乙個加法函式,實現兩個數相加。
練習案例的**如下所示。
#include
using
namespace std;
//函式的定義
//語法:
//返回值型別 函式名(引數列表)
//加法函式,實現兩個整型相加,並且將相加的結果進行返回
intadd
(int num1,
int num2)
intmain()
函式的呼叫功能:使用定義好的函式。
函式的呼叫語法:函式名(引數)
例項如下所示。
#include
using
namespace std;
//定義加法函式
intadd
(int num1,
int num2)
//函式定義的時候,num1和num2並沒有真實資料,只是乙個形式上的引數,簡稱形參
intmain()
c = 30
所謂值傳遞,就是函式呼叫時實參將數值傳入給形參。值傳遞時,如果形參發生任何改變,並不會影響實參。
例項如下所示。
#include
using
namespace std;
//值傳遞
//定義函式,實現兩個數字進行交換的函式
//如果函式不需要返回值,宣告的時候可以寫void
void
swap
(int num1,
int num2)
intmain()
a = 10
b = 20
交換前:
num1 = 10
num2 = 20
交換後:
num1 = 20
num2 = 10
a = 10
b = 20
值傳遞圖示如下。
常見的函式樣式有4種:
無參無返
有參無返
無參有返
有參有返
例項如下所示。
#include
using
namespace std;
//函式常見樣式
//1.無參無返
void
test01()
//2.有參無返
void
test02
(int a)
//3.無參有返
inttest03()
//4.有參有返
inttest04
(int a)
intmain()
this is test01!
this is test02, a = 100!
this is test03!
num1 = 1000
this is test04, a = 10000!
num2 = 10000
函式的宣告作用:告訴編譯器函式名稱及如何呼叫函式。函式的實際主體可以單獨定義。
函式的宣告可以多次,但是函式的定義只能有一次。
例項如下所示。
#include
using
namespace std;
//函式的宣告
//比較函式,實現兩個整型數字進行比較,返回較大的值
//函式的宣告:提前告訴編譯器函式的存在
intmax
(int a,
int b)
;int
main()
//函式的定義
intmax
(int a,
int b)
//函式的定義在main()函式之後,一定要在之前進行宣告,否則會報錯
函式的分檔案編寫的作用:讓**結構更加清晰。
函式分檔案編寫一般有4個步驟:
建立字尾名為.h
的標頭檔案 ;
建立字尾名為.cpp
的原始檔;
在標頭檔案中寫函式的宣告;
在原始檔中寫函式的定義。
例項如下所示。
#include
using
namespace std;
//函式的宣告
void
swap
(int a,
int b)
;
#include
"swap.h"
//函式的定義
void
swap
(int a,
int b)
#include
using
namespace std;
#include
"swap.h"
//函式的分檔案編寫
//實現兩個數字之間進行交換的函式
//1.建立.h字尾名的標頭檔案
//2.建立.cpp字尾名的原始檔
//3.在標頭檔案中寫函式的宣告
//4.在原始檔中寫函式的定義
C 基礎入門詳細筆記(六)
c 基礎入門詳細筆記 一 c 基礎入門詳細筆記 二 c 基礎入門詳細筆記 三 c 基礎入門詳細筆記 四 c 基礎入門詳細筆記 五 c 基礎入門詳細筆記 六 目錄 十 建構函式 1 建構函式定義 1.1 特點 1.2 作用 1.3 建構函式的種類 2 帶參構造 2.1 定義 十 一 棧記憶體與堆記憶體...
C 入門基礎 函式過載
在生活中我們也會遇到 函式過載 你鼓起勇氣捧起鮮花向你心儀已久的女神表白,你將花用雙手遞給女神,含情脈脈對女神說 我喜歡上你了!這時女神大呼流氓反手乙個耳光就跑走了,周圍圍觀的群眾紛紛豎起大拇指直呼內行,而這時的你還不知道自己說錯了什麼話,會被女神直呼流氓。生活中的 函式過載 就是一詞多義,在c 中...
html入門基礎(六)
外盒尺寸計算 元素空間尺寸 element空間高度 content height padding border margin element 空間寬度 content width padding border margin 內盒尺寸計算 元素實際大小 element height content h...