首頁 > 後端開發 > C++ > 主體

C程式設計中的函數

WBOY
發布: 2023-08-26 08:33:12
轉載
908 人瀏覽過

C程式設計中的函數

函數是一組共同執行任務的語句。每個 C 程式都至少有一個函數,即 main(),並且所有最瑣碎的程式都可以定義其他函數。

您可以將程式碼分割為單獨的函數。如何在不同的函數之間劃分程式碼取決於您,但邏輯上的劃分是每個函數執行特定的任務。

函數宣告告訴編譯器有關函數的名稱、傳回類型和參數。函數定義提供了函數的實際主體。

C 標準函式庫提供了許多您的程式可以呼叫的內建函數。例如,strcat() 用於連接兩個字串,memcpy() 用於將一個記憶體位置複製到另一個位置,以及更多函數。

A函數也可以稱為方法、子程式或過程等。

定義函數

C 語言中函數定義的一般形式如下:

return_type function_name( parameter list ) {
   body of the function
}
登入後複製

C 程式設計中的函數定義由函數頭和函數體組成。以下是函數的所有部分 -

  • 傳回類型 - 函數可以傳回一個值。 return_type 是函數傳回值的資料型別。有些函數執行所需的操作而不傳回值。在本例中,return_type 是關鍵字 void。

  • 函數名稱 - 這是函數的實際名稱。函數名稱和參數清單一起構成函數簽名。

  • 參數 - 參數就像佔位符。當呼叫函數時,您將一個值傳遞給參數。該值稱為實際參數或參數。參數列表是指函數參數的類型、順序和數量。參數可選;也就是說,函數可以不包含參數。

  • 函數體 - 函數體包含定義函數函數的語句集合。 < /p>

範例程式碼

/* function returning the max between two numbers */
int max(int num1, int num2) {
   /* local variable declaration */
   int result;
   if (num1 > num2)
      result = num1;
   else
      result = num2;
   return result;
}
登入後複製

函數宣告

函數宣告告訴編譯器函數名稱以及如何呼叫函數。函數的實際主體可以單獨定義。

函數宣告包含以下部分-

return_type function_name( parameter list );
登入後複製

對於上面定義的函數max(),函數宣告如下-

int max(int num1, int num2);
登入後複製

參數名稱在函數宣告中並不重要,只需要它們的類型,因此以下也是有效的宣告-

int max(int, int);
登入後複製

函數呼叫

在建立C 函數時,您需要定義該函數必須執行的動作。要使用函數,您必須呼叫該函數來執行定義的任務。

當程式呼叫函數時,程式控制權將轉移到被呼叫的函數。被呼叫函數執行已定義的任務,當執行其傳回語句或到達其函數結束右大括號時,它將程式控制權傳回給主程式。

要呼叫函數,您只需需要將所需的參數與函數名稱一起傳遞,如果函數有傳回值,則可以儲存返回值。例如 -

範例程式碼

 即時示範

#include 
/* function declaration */
int max(int num1, int num2);
int main () {
   /* local variable definition */
   int a = 100;
   int b = 200;
   int ret;
   /* calling a function to get max value */
   ret = max(a, b);
   printf( "Max value is : %d

", ret ); return 0; } /* function returning the max between two numbers */ int max(int num1, int num2) { /* local variable declaration */ int result; if (num1 > num2) result = num1; else result = num2; return result; }

登入後複製

輸出

Max value is : 200
登入後複製

以上是C程式設計中的函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!