68精品久久久久久欧美,最近中文字幕完整在线看一,久久亚洲男人天堂,最近中文字幕完整视频高清1

您好,歡迎進(jìn)入深圳市穎特新科技有限公司官方網(wǎng)站!

您現(xiàn)在的位置:首頁(yè) 新聞資訊 >> 新聞?lì)^條 >> 函數(shù)的聲明
新聞資訊
NEWS INFORMATION

函數(shù)的聲明

發(fā)布時(shí)間:2019-05-22

C語(yǔ)言代碼由上到下依次執(zhí)行,原則上函數(shù)定義要出現(xiàn)在函數(shù)調(diào)用之前,否則就會(huì)報(bào)錯(cuò)。但在實(shí)際開(kāi)發(fā)中,經(jīng)常會(huì)在函數(shù)定義之前使用它們,這個(gè)時(shí)候就需要提前聲明。

所謂聲明(Declaration),就是告訴編譯器我要使用這個(gè)函數(shù),你現(xiàn)在沒(méi)有找到它的定義不要緊,請(qǐng)不要報(bào)錯(cuò),稍后我會(huì)把定義補(bǔ)上。

函數(shù)聲明的格式非常簡(jiǎn)單,相當(dāng)于去掉函數(shù)定義中的函數(shù)體再加上分號(hào);,如下所示:

返回值類(lèi)型  函數(shù)名( 類(lèi)型 形參, 類(lèi)型 形參… );

也可以不寫(xiě)形參,只寫(xiě)數(shù)據(jù)類(lèi)型:

返回值類(lèi)型  函數(shù)名( 類(lèi)型, 類(lèi)型…);

函數(shù)聲明給出了函數(shù)名、返回值類(lèi)型、參數(shù)列表(參數(shù)類(lèi)型)等與該函數(shù)有關(guān)的信息,稱(chēng)為函數(shù)原型(Function Prototype)。

函數(shù)原型的作用是告訴編譯器與該函數(shù)有關(guān)的信息,讓編譯器知道函數(shù)的存在,以及存在的形式,即使函數(shù)暫時(shí)沒(méi)有定義,編譯器也知道如何使用它。

有了函數(shù)聲明,函數(shù)定義就可以出現(xiàn)在任何地方了,甚至是其他文件、靜態(tài)鏈接庫(kù)、動(dòng)態(tài)鏈接庫(kù)等。

上節(jié)給出了計(jì)算sum = 1! + 2! + 3! + ... + (n-1)! + n!的代碼,這節(jié)我們稍作修改,將 factorial() 和 sum() 函數(shù)的定義放到 main() 函數(shù)后面,請(qǐng)看下面的代碼:

  1. #include <stdio.h>
  2. // 函數(shù)聲明
  3. long factorial(int n); //也可以寫(xiě)作 long factorial(int);
  4. long sum(long n); //也可以寫(xiě)作 long sum(long);
  5. int main(){
  6. printf("1!+2!+...+9!+10! = %ld\n", sum(10));
  7. return 0;
  8. }
  9. //求階乘
  10. long factorial(int n){
  11. int i;
  12. long result=1;
  13. for(i=1; i<=n; i++){
  14. result *= i;
  15. }
  16. return result;
  17. }
  18. // 求累加的和
  19. long sum(long n){
  20. int i;
  21. long result = 0;
  22. for(i=1; i<=n; i++){
  23. //嵌套調(diào)用
  24. result += factorial(i);
  25. }
  26. return result;
  27. }

運(yùn)行結(jié)果:
1!+2!+...+9!+10! = 4037913

我們知道,使用 printf()、puts()、scanf()、getchar() 等函數(shù)要引入 stdio.h 這個(gè)頭文件,很多初學(xué)者認(rèn)為 stdio.h 中包含了函數(shù)定義(也就是函數(shù)體),只要有了頭文件程序就能運(yùn)行。其實(shí)不然,頭文件中包含的都是函數(shù)聲明,而不是函數(shù)定義,函數(shù)定義都在系統(tǒng)庫(kù)中,只有頭文件沒(méi)有系統(tǒng)庫(kù)在鏈接時(shí)就會(huì)報(bào)錯(cuò),程序根本不能運(yùn)行。

最后再補(bǔ)充一點(diǎn),函數(shù)原型給出了使用該函數(shù)的所有細(xì)節(jié),當(dāng)我們不知道如何使用某個(gè)函數(shù)時(shí),需要查找的是它的原型,而不是它的定義,我們往往不關(guān)心它的實(shí)現(xiàn)。

聯(lián)系方式0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬(wàn)眾潤(rùn)豐創(chuàng)業(yè)園A棟2樓A08

承德市| 岑巩县| 永城市| 浮山县| 高唐县| 微博| 杨浦区| 灌南县| 海林市| 隆尧县| 邳州市| 广西| 砚山县| 儋州市| 福鼎市| 都安| 平陆县| 临澧县| 西宁市| 防城港市| 静安区| 清镇市| 宿州市| 桂阳县| 新津县| 永新县| 浦北县| 额济纳旗| 安阳市| 宁阳县| 贵港市| 汝城县| 会昌县| 新宁县| 浦江县| 肃宁县| 承德市| 河源市| 内黄县| 辽中县| 阜南县|