什么是函數(shù)?
我們之前說過, #include , 就像是一個"工具箱",而工具箱中的"工具",就是函數(shù),也就是程序的模塊化。
比如說:printf 就是其中的一個函數(shù),功能是輸出。
C語言中的函數(shù),除了其本身提供的大量的庫函數(shù)之外,我們也可以自己定義函數(shù)。
也就是根據(jù)自己的需要,打造自己需要的工具。
定義函數(shù)的一般格式
返回值類型 函數(shù)名(參數(shù)類型 參數(shù)1,參數(shù)類型 參數(shù)2......)
{
函數(shù)內(nèi)代碼;
return 返回值; //若無返回值,不寫這一句
}
- 返回值類型:指這個函數(shù)最后得出結(jié)果后,返回給主函數(shù)的值是什么類型。
- 例如:int 類型。 當然,也可以不設(shè)置返回值,返回為空,也就是void
- 函數(shù)名:指這個函數(shù)的名字,由你自己起名。
- 參數(shù):指執(zhí)行這個函數(shù),所需要傳入的數(shù)據(jù)。
- 參數(shù)類型:指傳入?yún)?shù)的類型,如 int 型。
自定義函數(shù),例1:A+B
我們寫一個函數(shù),功能是計算兩個數(shù)的和,函數(shù)返回值是兩個數(shù)的和。
就是下面這樣
int Add(int a,int b)
{
return a+b;
}
- a 和 b 就是參數(shù),它的值是你在調(diào)用函數(shù)時輸入的值。
- return 就是返回的意思,返回值是 a+b,也就是兩數(shù)之和。
調(diào)用函數(shù)
也就是使用我們定義出來的函數(shù),就用我們剛剛定義的函數(shù)來說明:
#include
int Add(int a,int b)
{
return a+b;
}
int main()
{
int c;
c=Add(3,6);
printf("%d",c);
return 0;
}
程序的輸出結(jié)果:
9
我們在主函數(shù)內(nèi)調(diào)用函數(shù)時,格式是:
函數(shù)名(參數(shù)1,參數(shù)2...)
- 在調(diào)用函數(shù)時,不需要像定義函數(shù)時一樣,寫出參數(shù)的類型,但需要保證參數(shù)的位置相互對應(yīng)。
- Add(3,6) ,3 對應(yīng)的就是函數(shù)中的 a,6 對應(yīng)的就是函數(shù)中的 b。 可以理解為給 a 賦值為 3,給 b 賦值為 6。 這個過程我們叫 "傳參"。
- 在函數(shù)中,我們定義了一個 int 型的數(shù)據(jù) c ,用來儲存函數(shù)返回的值,也就是兩數(shù)相加的和。
- 用單等號 = ,也就是賦值符,將函數(shù)的返回值賦值給了參數(shù) c 。
- 最后,我們使用庫函數(shù) printf 輸出 c ,也就是輸出了兩數(shù)之和。
我們再把程序改進一下,讓計算的數(shù)據(jù)由 “黑色窗口” 輸入。
#include
int Add(int a,int b)
{
return a+b;
}
int main()
{
int a,b,c;
scanf("%d%d",&a,&b);
c=Add(a,b);
printf("%d",c);
return 0;
}
- 這里我們需要注意的一點,函數(shù)中的參數(shù)名,跟主函數(shù)中的參數(shù)名是互不影響的,它們雖然名字相同,都是a和b,但卻獨立工作。 我們稱這樣的變量為"局部變量"。
-
C語言
+關(guān)注
關(guān)注
180文章
7630瀏覽量
140250 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4368瀏覽量
64176 -
Printf
+關(guān)注
關(guān)注
0文章
84瀏覽量
14079 -
調(diào)用函數(shù)
+關(guān)注
關(guān)注
0文章
11瀏覽量
2390
發(fā)布評論請先 登錄
什么是HOOK函數(shù)?HOOK函數(shù)的用途和用法

階躍函數(shù)和沖激函數(shù)
類成員函數(shù)與普通函數(shù)的區(qū)別研究
c語言函數(shù)指針定義,指針函數(shù)和函數(shù)指針的區(qū)別
內(nèi)聯(lián)函數(shù)和外聯(lián)函數(shù)有什么區(qū)別

基于plateaued函數(shù)的平衡布爾函數(shù)構(gòu)造
標準函數(shù)是什么_標準函數(shù)有哪些

C語言函數(shù)的回調(diào)函數(shù)
C語言-內(nèi)聯(lián)函數(shù)、遞歸函數(shù)、指針函數(shù)
復(fù)變函數(shù)的共軛和原函數(shù)的關(guān)系
函數(shù)類型和函數(shù)指針類型的區(qū)別
函數(shù)指針與回調(diào)函數(shù)的應(yīng)用實例

評論