糯米文學吧

位置:首頁 > 計算機 > C語言

編程函數的定義之C語言

C語言2.11W

類型標識符指明瞭本函數的類型,函數的類型實際上是函數返回值的類型。接下來,小編為您介紹了編程函數的定義之C語言,感謝您的閲讀

編程函數的定義之C語言

無參函數的定義

無參函數定義的`一般形式如下:類型標識符 函數名()其中類型標識符和函數名稱為函數頭。類型標識符指明瞭本函數的類型,函數的類型實際上是函數返回值的類型。該類型標識符與前面介紹的各種説明符相同。函數名是由用户定義的標識符,函數名後有一個空括號,其中無參數,但括號不可少。{}中的內容稱為函數體。在函數體中聲明部分,是對函數體內部所用到的變量的類型説明。在很多情況下都不要求無參函數有返回值,此時函數類型符可以寫為void。我們可以改寫一個函數定義:

voidHello(){

printf("Hello,world");

}

這裏,只把main改為Hello作為函數名,其餘不變。Hello函數是一個無參函數,當被其它函數調用時,輸出Hello world字符串。

有參函數定義的一般形式

有參函數定義的一般形式如下: 類型標識符 函數名(形式參數表列)有參函數比無參函數多了一個內容,即形式參數表列。在形參表中給出的參數稱為形式參數,它們可以是各種類型的變量,各參數之間用逗號間隔。在進行函數調用時,主調函數將賦予這些形式參數實際的值。形參既然是變量,必須在形參表中給出形參的類型説明。例如,定義一個函數,用於求兩個數中的大數,可寫為:

intmax(inta,intb){

if(a>b)returna;

elsereturnb;

}

第一行説明max函數是一個整型函數,其返回的函數值是一個整數。形參為a,b,均為整型量。a,b的具體值是由主調函數在調用時傳送過來的。在{}中的函數體內,除形參外沒有使用其它變量,因此只有語句而沒有聲明部分。在max函數體中的return語句是把a(或b)的值作為函數的值返回給主調函數。有返回值函數中至少應有一個return語句。在C程序中,一個函數的定義可以放在任意位置,既可放在主函數main之前,也可放在main之後。例如:可把max 函數置在main之後,也可以把它放在main之前。修改後的程序如下所示。

  【例8-1】函數定義示例

#include<stdio.h>

intmax(inta,intb){

if(a>b)returna;

elsereturnb;

}

intmain(void){

intmax(inta,intb);

intx,y,z;

printf("input two numbers:");

scanf("%d%d",&x,&y);

z=max(x,y);

printf("maxmum=%d",z);

return0;

}

現在我們可以從函數定義、函數説明及函數調用的角度來分析整個程序,從中進一步瞭解函數的各種特點。程序的第1行至第4行為max函數定義。進入主函數後,因為準備調用max函數,故先對max函數進行説明(程序第6行)。函數定義和函數説明並不是一回事,在後面還要專門討論。 可以看出函數説明與函數定義中的函數頭部分相同,但是末尾要加分號。程序第10行為調用max函數,並把x、y中的值傳送給max的形參a、b。max函數執行的結果(a或b)將返回給變量z。最後由主函數輸出z的值。

標籤:編程 函數 語言