什么是函數的調用?
函數的調用,就是使用我們已經定義好的函數,或者C語言自帶的庫函數。
在一個項目中,可能會需要重復執行某一“動作”,比如:計算兩個數的和。
如果我們每次都把這個“動作”的代碼寫一遍,不僅浪費時間,還影響代碼的美觀。
于是,我們就需要用到函數。
函數就是把某種功能封裝起來,變成一個“工具”,當我們需要使用它時,調用就行了。
函數調用的類別
函數的調用大致可以分為兩種,有參調用,和無參調用。
(1) 有參調用
- 有參調用,即調用函數時,需要傳入參數。
- 將實參的值賦給形參后,函數體再對形參進行處理,也就是運行函數,最后把最終結果返回給主函數。
例:
#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;
}
(2) 無參調用
- 無參調用,調用函數時,不需要傳入參數。
- 函數直接使用函數體內的代碼與數據,運行函數。
例:
#include
void PP()
{
printf("這是無參調用");
}
int main()
{
PP(); // 無參調用只需寫出函數名即可
return 0;
}
輸出:
這是無參調用
函數調用后的結果
無論是有參調用,還是無參調用,都是可以具有返回值的,但一般來說,無參調用沒有返回值。
對于有返回值的函數,在調用時是可以作為表達式的一部分來直接使用的。
例:
#include
int Add(int a,int b)
{
return a+b;
}
int main()
{
int a=5,b=1,c;
c=Add(a,b)+10;
printf("%d",c);
return 0;
}
輸出結果:
16
這段代碼c=Add(a,b)+ 10 ; 就是將調用的函數直接作為確定的值使用。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
C語言
+關注
關注
180文章
7608瀏覽量
137111 -
函數
+關注
關注
3文章
4338瀏覽量
62739 -
代碼
+關注
關注
30文章
4801瀏覽量
68734 -
函數調用
+關注
關注
0文章
19瀏覽量
2602
發布評論請先 登錄
相關推薦
C語言函數調用過程中的內存變化解析
相信很多編程新手村的同學們都會有一個疑問:C 語言如何調用函數的呢?局部變量的作用域為什么僅限于函數內?這個調用不是指C 語言上的函數
C語言使用函數調用的知識點
C語言使用函數調用,我們再熟悉不過了,但是函數調用在內存中究竟發生了什么真的清楚嗎?只有搞清楚內存里的內幕,才算完全搞懂函數的
發表于 09-07 11:47
?852次閱讀
C函數調用機制與棧幀原理詳解
當一個C函數被調用時,函數的參數如何傳遞、堆棧指針如何變化、棧幀是如何被建立以及如何被消除的,一直缺乏系統性的理解,因此決定花時間學習下函數調用
發表于 06-08 10:49
?1378次閱讀
C語言使用函數調用在內存中究竟發生了什么?
C語言使用函數調用,我們再熟悉不過了,但是函數調用在內存中究竟發生了什么真的清楚嗎?只有搞清楚內存里的內幕,才算完全搞懂函數的
linux用gdb調試遇到函數調用怎么辦?
linux用gdb調試遇到函數調用怎么辦? 在Linux上使用GDB調試時,遇到函數調用是一個常見的情況。函數
評論