函數(shù)是指將一組能完成一個(gè)功能或多個(gè)功能的語句放在一起的 代碼結(jié)構(gòu)。在C語言程序中,至少會包含一個(gè)函數(shù),及主函數(shù)main()。本文將詳細(xì)講解關(guān)于函數(shù)的相關(guān)內(nèi)容。
Part1函數(shù)概述
我們都知道函數(shù)是數(shù)學(xué)里的重要組成部分,數(shù)學(xué)中我們常見到函數(shù)的概念,但是你了解C語言中的函數(shù)嗎?其實(shí)函數(shù)就相當(dāng)于一個(gè)子程序,那什么是子程序呢?
- 在計(jì)算機(jī)科學(xué)中,子程序是一個(gè)大型程序中的某部分代碼, 由一個(gè)或多個(gè)語句塊組成。它負(fù)責(zé)完成某項(xiàng)特定任務(wù),而且相較于其他代 碼,具備相對的獨(dú)立性。
- 一般會有輸入參數(shù)并有返回值,提供對過程的封裝和細(xì)節(jié)的隱藏。這些代碼通常被集成為 軟件庫 。
Part2C語言中函數(shù)的分類
2.1 庫函數(shù)
2.1.1 什么是庫函數(shù)?
其實(shí)庫函數(shù)就是存放在函數(shù)庫中的函數(shù),具有明確的功能、入口調(diào)用參數(shù)和返回值。下面舉一些例子:
- 我們知道在我們學(xué)習(xí)C語言編程的時(shí)候,總是在一個(gè)代碼編寫完成之后迫不及待的想知道結(jié)果,想把這個(gè)結(jié)果打印到我們的屏幕上看看。這個(gè)時(shí)候我們會頻繁的使用一個(gè)功能:將信息按照一定的格式打印到屏幕上 (printf) 。
- 在編程的過程中我們會頻繁的做一些字符串的拷貝工作 (strcpy) 。
- 在編程中我們也計(jì)算,總是會計(jì)算n的k次方這樣的運(yùn)算(pow)。
2.1.2 庫函數(shù)是C語言提供的嗎?
不是,C語言標(biāo)準(zhǔn)中約定好,由編譯器的廠商提供實(shí)現(xiàn)。
2.1.3 為什么會有庫函數(shù)呢?
像上面我們描述的基礎(chǔ)功能,它們不是業(yè)務(wù)性的代碼。我們在開發(fā)的過程中每個(gè)程序員都可能用的到,為了支持可移植性和提高程序的效率,所以C語言的基礎(chǔ)庫中提供了一系列類似的庫函數(shù),方便程序員進(jìn)行軟件開發(fā)。
2.1.4 那怎么學(xué)習(xí)庫函數(shù)呢?
我們在開發(fā)的過程中每個(gè)程序員都可能用的到,為了支持可移植性和提高程序的效率,所以C語言的基礎(chǔ)庫中提供了一系列類似的庫函數(shù),方便程序員進(jìn)行軟件開發(fā)。
這里我給大家推薦一個(gè)可以很好查到有關(guān)庫函數(shù)的網(wǎng)站鏈接:https://cplusplus.com/
簡單的總結(jié),C語言常用的庫函數(shù)都有:
- IO函數(shù)
- 字符串操作函數(shù)
- 字符操作函數(shù)
- 內(nèi)存操作函數(shù)
- 時(shí)間/日期函數(shù)
- 數(shù)學(xué)函數(shù)
- 其他庫函數(shù)
注:庫函數(shù)必須知道的一個(gè)秘密就是:使用庫函數(shù),必須包含 #include 對應(yīng)的頭文件。
2.2 自定義函數(shù)
如果庫函數(shù)能干所有的事情,那還要程序員干什么?
所以更加重要的是 自定義函數(shù) ?。?!**自定義函數(shù)和庫函數(shù)一樣,有函數(shù)名,返回值類型和函數(shù)參數(shù)。**所謂自定義就是這些都是我們自己來設(shè)計(jì)。這給我們自己一個(gè)很大的發(fā)揮空間?。?!函數(shù)的組成,我們舉一個(gè)例子:寫一個(gè)函數(shù)可以找出兩個(gè)整數(shù)中的最大值。
#include < stdio.h >
//get_max函數(shù)的設(shè)計(jì)
int get_max(int x, int y)
{
return (x > y) ? (x) : (y);//三目運(yùn)算符:x大于y返回x,x小于y返回y
}
int main()
{
int a = 0;
int b = 0;
scanf("%d %d", &a, &b);
int max = get_max(num1, num2);
printf("max = %dn", max);
return0;
}
這里我們輸入a=10 b=20結(jié)果是正確的,說明我們自己定義的函數(shù)還是比較成功的哈
-
封裝
+關(guān)注
關(guān)注
126文章
7905瀏覽量
142971 -
C語言
+關(guān)注
關(guān)注
180文章
7604瀏覽量
136861 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4331瀏覽量
62629 -
代碼
+關(guān)注
關(guān)注
30文章
4788瀏覽量
68625
發(fā)布評論請先 登錄
相關(guān)推薦
評論