什麼叫函數有定義?
什麼是函數的一般性定義
函數的定義通常包含以下內容:
函數返回值類型 函數名(形參表說明) /* 函數首部 */
{ 說明語句 /* 函數體 */
執行語句
}
說明:
(1)數的定義中的類型,是指函數返回值的類型。函數返回值不能是數組,也不能是函數,除此之外任何合法的數據類型都可以是函數的類型,如:int 、long、float、char等,或是後面講到的指針、結構等。函數的類型是可以省略的,當不指明函數類型時,系統默認的是整類型。
(2)函數名是用戶自定義的標識符,是C語言函數定義中唯一不可省略的部分,需符合C語言對標識符的規定,即由字母,數字或下劃線組成,用於標識函數,並用該標識符調用函數。另外,函數名本身也有值,它代表了該函數的入口地址,使用指針調用該函數時,將用到此功能。
(3)形參也成為"形式參數"。形參表是用逗號分隔的一組變量說明,包括形參的類型和形參標識符,其作用是指出每一個形參的類型和形參的名稱,當調用函數時,接受來自主調函數的數據,確定各參數的值。形參表說明可以有兩種表示形式:
int func (int x, int y )
{ …… }
或 :
int func ( x, y )
int x, y;
{ …… }
通常,調用函數需要多個原始數據,就必須定義多個形式參數。注意,在")"後面不能加分號";"。
(4)用{ }括起來的部分是函數的主體,稱為函數體。函數體是一段程序,確定該函數應完成的規定的運算,應執行的規定的動作,集中體現了函數的功能。函數內部應有自己的說明語句和執行語句,但函數內定義的變量不可以與形參同名。花括號{ }是不可省略的。
根據函數定義的一般形式,我們可以得到一個C語言中最簡單的函數:
dumy ( )
{ }
這是C語言中一個合法的函數,函數名為dumy。它沒有函數類型說明,也沒有形參表,同時函數體內也沒有語句。實際上函數dumy不執行任何操作和運算,在一般情況下是沒有用途的,但在程序開發的過程中有時是需要的,常用來代替尚未開發完畢的函數。
1, 什麼是函數原型?什麼是函數定義?二者有何區別?
當函數聲明和定義出現在主函數之後的,我們需要在函數之前(在函數調用以前)加函數原型聲明。
函數原型聲明,指明 函數名字,返回類型,有幾個參數,這幾個參數是什麼類型。不需要函數體。也不需要形式參數的名字(當然,寫了形式參數的名字也不算錯)。分號作原型聲明 結束符
當函數定義出現在主函數之前,就不需要函數原型聲明。
函數定義,必須有函數體。同時有 函數名字,返回類型,有形式參數的類型和名字。
二者主要區別是一個有函數體,描寫函數數據加工和返回的過程和細節。另一個只是簡單地說一下函數名字,返回類型,有幾個參數。
例如:
函數原型聲明:int fun(int a, int b); // 函數名字fun,返回類型 int,有2個 int 參數
函數原型聲明:int fun(int, int); // 函數名字fun,返回類型 int,有2個 int 參數
函數原型聲明:fun(int, int); // 函數名字fun,默人返回類型,有2個 int 參數
例如函數聲明和定義: int fun(int a, int b) {return a+b;}
// 花括號裡是函數體,結束處沒有分號,有形參名。
函數是什麼意思?
函數就是在某變化過程中有兩個變量X和Y,變量Y隨著變量X一起變化,而且依賴於X。如果變量X取某個特定的值,Y依確定的關係取相應的值,那麼稱Y是X的函數。這一要領是由法國數學家黎曼在19世紀提出來的,但是最早產生於德國的數學家菜布尼茨。他和牛頓是微積分的發明者。17世紀末,在他的文章中,首先使用了“function"一詞。翻譯成漢語的意思就是“函數。不過,它和我們今天使用的函數一詞的內涵並不一樣,它表示”冪”、“座標”、“切線長”等概念。
直到18世紀,法國數學家達朗貝爾在進行研究中,給函數重新下了一個定義,他認為,所謂變量的函數,就是指由這些變量和常量所組成的解析表達式,即用解析式表達函數關係。後來瑞士的數學家歐拉又把函數的定義作了進一步的規範,他認為函數是能描畫出的一條曲線。我們常見到的一次函數的圖像、二次函數的圖像、正比例函數的圖像、反比例的圖像等都是用圖像法表示函數關係的。如果用達朗貝爾和歐拉的方法來表達函數關係,各自有它們的優點,但是如果作為函數的定義,還有欠缺。因為這兩種方法都還停留在表面現象上,而沒有提示出函數的本質來。
19世紀中期,法國數學家黎緊吸收了萊布尼茨、達朗貝爾和歐拉的成果,第一次準確地提出了函數的定義:如果某一個量依賴於另一個量,使後一個量變化時,前一個量也隨著變化,那麼就把前一個量叫做後一個量的函數。黎曼定義的最大特點在於它突出了就是之間的依賴、變化的關係,反映了函數概念的本質屬性。
參考資料:頂hidao.baidu.com/question/1899845.html